0

如何自动更改tabhost选项卡的名称?

TabHost tmp = (TabHost) findViewById(R.id.tabhost);
tmp.getTabWidget().getChildAt(0).findViewById(android.R.id.title).setText("Test");

SetText(string)对于文本视图是未定义的,为什么?

谢谢

4

2 回答 2

1

要更改选项卡的文本,您需要获取视图,设置为选项卡标题的 TextView,您可以像这样更改它:

TabHost tabhost = getTabHost();
for(int i=0;i<tabhost.getTabWidget().getChildCount();i++) 
{
    TextView tv = (TextView) tabhost.getTabWidget().getChildAt(i).findViewById(android.R.id.title);
    tv.setText(.....);
} 

有关 TabHost 的更多信息,请参阅此链接 http://developer.android.com/reference/android/widget/TabHost.html

于 2013-01-23T09:20:45.573 回答
0
LinearLayout rLayout = (LinearLayout) tmp.getTabWidget().getChildAt(Pos_of_ur_tab_in_tab_widget_for_which_text_to_changed);
((TextView)rLayout.getChildAt(position_of_ur_textview_child_in_tab_layout)).setText("your_text");
于 2013-01-23T09:21:07.430 回答