我有一個TabActivity
其中包括3 tabs
。而我設置currentActivity
爲1
不是默認的0
。當我開始我的TabActivity
時,我發現Activity0也在運行,但Tabactivity顯示了我設置爲currentActivity
的Activity1的界面。此外,當我點擊tab2(包括Activity2)並再次單擊tba1或tab0時,它們不再運行。正如我認爲TabActivity只是運行一次。我想在每次點擊標籤時重新啓動標籤中的每個活動。我想保持這些跟蹤,以便當點擊後退按鈕時它應該是可以跟蹤的。TabActivity中的活動在第二次單擊時不運行onCreate方法
public class ActivityInTab extends TabActivity implements OnTabChangeListener{
TabHost tabHost;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activityintab);
tabHost = getTabHost();
TabSpec meSpec = tabHost.newTabSpec("Ben");
meSpec.setIndicator("Ben", getResources().getDrawable(R.drawable.icon_me));
Intent meIntent = new Intent(this, MeActivity.class);
meSpec.setContent(meIntent);
TabSpec searchSpec = tabHost.newTabSpec("Arama");
searchSpec.setIndicator("Çevrende Ara", getResources().getDrawable(R.drawable.icon_search));
// Intent searchIntent = new Intent(this, SearchActivity.class);
// searchSpec.setContent(searchIntent);
TabSpec resultSpec = tabHost.newTabSpec("Aradıklarım");
resultSpec.setIndicator("Arama Sonuçlarım", getResources().getDrawable(R.drawable.icon_result));
// Intent resultIntent = new Intent(this, ResultActivity.class);
// resultSpec.setContent(resultIntent);
tabHost.addTab(searchSpec);
tabHost.addTab(meSpec);
tabHost.addTab(resultSpec);
tabHost.setCurrentTab(1);
tabHost.setOnTabChangedListener(this);
}
@Override
public void onTabChanged(String tabId) {
if(tabId.equals("Ben") && tabHost.getCurrentTab()==0){
MeActivity meact = (MeActivity) getLocalActivityManager().getActivity(tabId);
}
if(tabId.equals("Arama") && tabHost.getCurrentTab()==1){
SearchActivity sact= (SearchActivity) getLocalActivityManager().getActivity(tabId);
}
if(tabId.equals("Aradıklarım") && tabHost.getCurrentTab()==2){
ResultActivity ract = (ResultActivity) getLocalActivityManager().getActivity(tabId);
}
}
}
的onCreate將只調用一次。你可以檢查onResume。 – Triode