5
感謝您檢查我的詢問!Android - onTabChanged不會在選擇不同的選項卡時被調用
我已經實現了一個標籤環境,如下圖所示。它似乎符合我的預期,除了它從不執行onTabChanged方法。我發現了幾篇關於這種情況的文章,但一直沒能讓我的代碼按照我的預期工作。建議嗎?
感謝, 芯片
public class TestTabActivity extends TabActivity implements OnTabChangeListener {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
intent = new Intent().setClass(this, Page1Activity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
spec = tabHost.newTabSpec("page1").setIndicator("Page 1",
res.getDrawable(R.drawable.ic_tab_page1))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, Page2Activity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
spec = tabHost.newTabSpec("page2").setIndicator("Page 2",
res.getDrawable(R.drawable.ic_tab_page2))
.setContent(intent);
tabHost.addTab(spec);
intent = new Intent().setClass(this, Page2Activity.class).addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
spec = tabHost.newTabSpec("page3").setIndicator("Page 3",
res.getDrawable(R.drawable.ic_tab_page3))
.setContent(intent);
tabHost.addTab(spec);
tabHost.setCurrentTab(0);
}
public void onTabChanged(String tabId) {
Log.d("Tab Changed", "Changed a Tab");
}
}
謝謝你Knickedi!我失明瞭,但現在我明白了。 –