Android 如何动态更改选项卡的标题

Android 如何动态更改选项卡的标题,android,Android,我的应用程序中有三个选项卡。在一个选项卡下的事件上,我想更改另一个现有选项卡的标题。这是我们在向TabHost添加选项卡时提供的标题 例如:TabHost.addTab(TabHost.newTabSpec(“Tab2”)).setIndicator(“我需要动态更改”).setContent 在上面的示例中,我在setIndicator()下提供的tab2的标题应该动态更改 有没有办法做到这一点。与其将指示器设置为字符串,不如在设置要使用的视图的位置使用指示器。然后,您可以保留该视图(例如文本

我的应用程序中有三个选项卡。在一个选项卡下的事件上,我想更改另一个现有选项卡的标题。这是我们在向TabHost添加选项卡时提供的标题

例如:TabHost.addTab(TabHost.newTabSpec(“Tab2”)).setIndicator(“我需要动态更改”).setContent

在上面的示例中,我在setIndicator()下提供的tab2的标题应该动态更改


有没有办法做到这一点。

与其将指示器设置为
字符串
,不如在设置要使用的
视图的位置使用指示器。然后,您可以保留该
视图(例如
文本视图
),并根据需要更改其内容。

除非您能找到更干净的方法,否则您可以访问
选项卡小部件
本身。
TabWidget
中包含每个选项卡的相对布局,每个选项卡都包含一个
ImageView
和一个
TextView
。要直接访问索引0选项卡中的textview,可以执行以下操作:

mTabHost.getTabWidget().getChildAt(0).findViewById(android.R.id.title);
然后,只需将其转换为
文本视图
,您可以根据需要对其进行编辑。下面的内容对我很有用:

((TextView)mTabHost.getTabWidget().getChildAt(0).findViewById(android.R.id.title)).setText("New");

您不应该再为ICS使用“TabHost”,它在版本13中已被弃用。相反,你需要你的“ActionBar”


Android将立即刷新选项卡

TabHost未被弃用!你从哪里想出来的?
Tab mTab = super.getSupportActionBar().getTabAt(0); 
mTab.setText("new Title");