Вопрос

У меня есть проект с двумя вкладками.Вкладки создаются в основном классе.Здесь я также добавил ThineStener, чтобы обработать изменения между вкладками.Вот мгновенная вкладка:

TabHost tabHost = getTabHost();    
tabHost.setOnTabChangedListener(this);
    TabHost.TabSpec spec;
    Intent intent;
    intent = new Intent().setClass(this, Tab1.class);
    spec = tabHost.newTabSpec("tab1").setIndicator("",
                    res.getDrawable(R.drawable.ic_tab_tab1))
                    .setContent(intent);
            tabHost.addTab(spec);
.

Слушатель Способ:

public void onTabChanged(String tabName) {
    if (tabName.equals("tab1")){
        tab1.load();
    }
}
.

и похоже на вторую вкладку.Мой вопрос, если методы Oncreate () работают только один раз на классах Tab1 и Tab2, как я могу «заставить» основной класс показать соответствующую активность после изменения вкладки?Я получаю NullPointerexception

Классы вкладок - это что-то подобное:

    public class Tab1 extends Activity{
      public void onCreate(Bundle icicle) {
          super.onCreate(icicle);
          setContentView(R.layout.tab1);
          load();
      }
      public void load(){
        //....
      }
    }
.

Это было полезно?

Решение

onCreate() method calls only once when your Activity first time loaded.

If you want to perform any functionality on each time you view your Activity, put that functionality in onResume() method.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top