В виджете TabHost я могу создать новую вкладку с ее содержанием (Намерение), использующее TabHost.addTab (TabHost. TabSpec tabSpec).
Мы можем удалить все вкладки, которые мы создали путем вызова clearAllTabs (), но я не могу выяснить, как удалить вкладку или просто заменить содержание (Намерение) во вкладке с новым Намерением.
таким образом, как что я нуждаюсь в чем-то removeTab(int index)
Фактически, clearAllTabs делает это:
public void clearAllTabs() {
mTabWidget.removeAllViews();
initTabHost();
mTabContent.removeAllViews();
mTabSpecs.clear();
requestLayout();
invalidate();
}
И метод removeAllViews происходит от класса ViewGroup
. К счастью, ViewGroup
действительно имеет методы для удаления только одного представления:
removeView (представление представления)
removeViewAt (int index)
removeViewInLayout (представление представления)
Зная это, я бы рекомендуется создать подкласс TabWidget
и TabHost
, чтобы добавить необходимое поведение. Может быть, есть более простой способ, но это единственный, о котором я могу думать.
Удачи