2010-09-26 2 views
2

Я новичок в андроиде, и у меня есть небольшой опыт работы с HTML и Basic, после много времени и разочарования. Наконец, мне удалось сделать мой список доступным, я сделал намерение, основанное на такой позиции;Как достичь лучшей организации

if (position == 3) { 
       Intent intent = new Intent(this, Bradford.class); 
       startActivity(intent); 
} 

проблема, у меня есть 4 списков в отдельных вкладках и у меня есть 92 вариантов в рамках этих списков, так что я должен был бы сделать 92 намерения (очень грязный), поэтому первый вопрос, есть ли лучший способ достижения intents с меньшим количеством кода, в то время как все еще используется позиция для определения щелчка

Также у меня есть 92 класса, в общем, все они будут более или менее одинаковыми, первое, что я хочу сделать, это поместить каждую категорию списка в папку, это изменит путь, например (this, com.ff.org.firstlist.Bradford.class), мне нужно сделать это в коде или просто в манифесте.

Наконец-то у меня есть 92 класса, они откроют URL-адреса приложения и будут использовать gps, а некоторые функции печати и изображения будут лучше иметь всю мою информацию в одном файле вместо отдельных классов с точки зрения скорости и надежности, или я должен сохранить 92 класса.

+0

Я прочитал это о том, как достичь лучшего оргазма – Falmarri

ответ

0

Вы можете группировать свои действия, используя ActivityGroup. Поэтому установите содержимое вкладки в ActivityGroup вместо обычного Activity.

tabHost.addTab(tabHost.newTabSpec("Tab") 
       .setIndicator("Tab") 
       .setContent(new Intent(this, YourActivityGROUP.class) 
       .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))); 

В рамках этой ActivityGroup вы можете начать другое мероприятие.

class YourActivityGROUP extends ActivityGroup{ 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 

      //you van get the local activitymanager to start the new activity 

      View view = getLocalActivityManager() 
            .startActivity("ReferenceName", new 
      Intent(this,YourActivity.class) 
            .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP)) 
            .getDecorView(); 
      this.setContentView(view); 

     } 
    } 

Вот некоторые примеры: android-tabactivity-nested-activities, experience-multiple-android-activities

Смежные вопросы