【发布时间】:2010-05-29 16:26:22
【问题描述】:
我的应用程序需要动态更新选项卡指示器,我正在尝试通过调用 TabSpec.setIndicator() 来执行此操作,但它不起作用。这是我的代码:
在 TabActivity 的 onCreate 方法中:
tabHost = getTabHost();
TabSpec tabSpec = tabHost.newTabSpec("abc");
tabSpec.setIndicator("helloabc");
tabSpec.setContent(new MyViewFactory());
tabHost.addTab(tabSpec);
现在我需要将标签指示符更改为另一个字符串,例如“xyz”
TabSpec tabSpec = MyTabActivity.getTabSpec();
tabSpec.setIndicator("xyz");
但它不起作用。所以我想知道标签指示器添加到标签主机后如何更改它?非常感谢。
解决方案
感谢@CommonsWare,我使用 TabWidget.getChildAt 来制作它,为了您的方便,这是我的代码:
TextView title = (TextView) tabHost.getTabWidget().getChildAt(tabId).findViewById(android.R.id.title)
title.setText("xyz");
【问题讨论】:
-
我可以这样改变图像指示器吗?