在TabHost小部件中,我可以使用TabHost.addTab(TabHost.TabSpec tabSpec)创建一个带有其内容(意图)的新选项卡。
我们可以通过调用clearAllTabs()来删除我们创建的所有选项卡,但是我不知道如何删除选项卡或仅用新的Intent替换选项卡中的内容(Intent)。
所以我需要像removeTab(int index)
这样的东西
最佳答案
实际上,clearAllTabs可以做到这一点:
public void clearAllTabs() {
mTabWidget.removeAllViews();
initTabHost();
mTabContent.removeAllViews();
mTabSpecs.clear();
requestLayout();
invalidate();
}
方法removeAllViews来自类
ViewGroup
。幸运的是,ViewGroup
确实具有仅删除一个 View 的方法:removeView(View view)
removeViewAt(int index)
removeViewInLayout(View view)
知道这一点,我建议将
TabWidget
和TabHost
子类化以添加所需的行为。也许有一种更简单的方法,但这是我能想到的唯一方法。祝你好运
关于android - 如何从TabHost删除选项卡,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3299845/