使用TabHost和LocalActivityManager时未调用Android OnResume

时间:2011-12-28 19:48:27

标签: java android android-tabhost

我设置了一个包含两个活动的tabhost,因为我无法使用TabActivity,所以我使用了LocalActivityManager,但是当我切换选项卡onResume时,没有为选项卡中的活动调用。这是我的设置:

mlam = new LocalActivityManager(this, false);
mlam.dispatchCreate(savedInstanceState);
tabHost = (TabHost) findViewById(android.R.id.tabhost);
tabHost.setup(mlam);

我将dispatchResume和dispatchPause放在适当的位置,但它们只在主标签活动获得onResume或onPause时触发。我尝试通过在bab更改时触发dispatchResume来解决我的问题但似乎没有解雇。

tabHost.setOnTabChangedListener(new OnTabChangeListener(){

    public void onTabChanged(String tabId) {

    mlam.dispatchResume();

     }

});

有谁知道如何确保为活动触发onResume,以便我可以在选中时更新选项卡中的内容?

1 个答案:

答案 0 :(得分:2)

您必须使用第二个参数true初始化mlam: mlam = new LocalActivityManager(this,true);

然后在tabhost中只有一次活动恢复。