2010-07-21 114 views

回答

13

其实,clearAllTabs确实是:

public void clearAllTabs() { 
    mTabWidget.removeAllViews(); 
    initTabHost(); 
    mTabContent.removeAllViews(); 
    mTabSpecs.clear(); 
    requestLayout(); 
    invalidate(); 
} 

而且方法removeAllViews来自类ViewGroup。幸运的是,ViewGroup确实有方法去除只有一个观点:

  • removeView(View view)
  • removeViewAt(int index)
  • removeViewInLayout(View view)

知道了,我会推荐给继承TabWidgetTabHost添加你需要的行为。也许有一种更简单的方法,但这是我能想到的唯一方法。 好运

23

容易得多:

tabHost.getTabWidget().removeView(tabHost.getTabWidget().getChildTabViewAt(3)); 
+0

这正是我一直在寻找4. – 2013-01-16 14:53:26

+0

可以按Tab键通过其标签或能找到选项卡中单击当前指数的位置.. – 2013-06-25 12:19:56

+0

当前索引中删除: tabHost.getCurrentTab() – 2red13 2013-06-25 15:53:12