タブによって表示されるアイテムを含むリストビューを持つTabSpecのセットを含むTabHostを持つアクティビティがあります。各TabSpecを作成するときに、タブヘッダーに表示されるアイコンを設定します。
TabSpecはsetupTabs()
、適切な数のタブを作成するためにループするメソッド内でこのように作成されます。
TabSpec ts = mTabs.newTabSpec("tab");
ts.setIndicator("TabTitle", iconResource);
ts.setContent(new TabHost.TabContentFactory(
{
public View createTabContent(String tag)
{
...
}
});
mTabs.addTab(ts);
プログラムの実行中に各タブに表示されるアイコンを変更できるようにしたい場合がいくつかあります。現在、すべてのタブを削除し、上記のコードを再度呼び出して再作成しています。
mTabs.getTabWidget().removeAllViews();
mTabs.clearAllTabs(true);
setupTabs();
すべてのタブを削除して再作成せずに、表示されているアイコンを置き換える方法はありますか?