0

我有一个带有两个选项卡的项目。选项卡在主类中创建。在这里,我也添加了 tablistener,以处理选项卡之间的更改。这是一个标签的瞬间:

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 类中只运行一次,如何“强制”主类在选项卡更改后显示相应的 Activity?我收到 NullPointerException

选项卡的类是这样的:

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

1 回答 1

4

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.

于 2012-01-27T09:47:53.413 回答