如何从其他活动中动态更改tabhost的指示符

时间:2011-02-23 13:50:06

标签: android dynamic android-tabhost indicator

我有一个包含5个标签的tabhost(星期一......星期五)。 我想从其他活动中动态更改指标(使用按钮) 有没有人有办法解决吗 提前致谢

2 个答案:

答案 0 :(得分:1)

获取tabIndicator视图。它通常由ImageView和TextView组成,除非您有自己的自定义TabIndicator。

ViewGroup tabInidcator = tabHost.getTabWidget().getChildTabViewAt('the index of tab you want to change')

相对布局中的textView当前是第二个子节点(小心这可能会更改),除非您有自定义tabIndicator视图。

TextView tabIndicator = (TextView) tabIndicator.getChildAt(1);
indicator.setText("thunday");

如果要更改图像,请在位置0获取imageView

答案 1 :(得分:0)

我认为你不能直接这样做。而是尝试在某处存储选项卡主机的配置。因此,当您收到tab tab活动并点击onResume()方法时,您可以对更改的选项卡配置做出反应并重新排列选项卡。

存储选项卡配置的位置取决于配置是否应在重新启动整个应用程序后继续存在。如果您不关心使用标准配置重新启动应用程序,则可以使用Application类来存储此信息。如果重新启动后选项卡更改配置也应该可用,则必须以某种方式在设备上保留它。您可以阅读Android developer page上的不同选项。