如何在android中的TabWidget中更改选项卡指示器文本的颜色?

时间:2014-01-17 15:54:49

标签: android xml customization android-tabhost fragment-tab-host

我有一个非常大的问题。 我正在尝试做一个简单的应用程序。我在那里使用标签,我真的不知道如何动态更改tabWidget中的文本颜色。

如何更改我的xml或java代码以使文本动态更改?

这就是我在java代码中所拥有的:

TabHost tabHost =(TabHost)findViewById(R.id.tabhost);

    tabHost.setup();

    TabHost.TabSpec tabSpec = tabHost.newTabSpec("creator");
    tabSpec.setContent(R.id.Card);
    tabSpec.setIndicator("Debit Card");
    tabHost.addTab(tabSpec);

    tabSpec = tabHost.newTabSpec("account");
    tabSpec.setContent(R.id.Account);
    tabSpec.setIndicator("Checking Account");
    tabHost.addTab(tabSpec);

那是我的xml文件:

后台选择器 - tab_bg.xml:

<item android:state_selected="true" android:drawable="@drawable/tab_bg_selected"></item>
<item android:state_pressed="true" android:drawable="@drawable/tab_bg_selected"></item>
<item android:state_active="true" android:drawable="@drawable/tab_bg_selected"></item>

<item android:state_selected="false" android:drawable="@drawable/tab_bg_unselected"></item>
<item android:state_pressed="false" android:drawable="@drawable/tab_bg_unselected"></item>
<item android:state_active="false" android:drawable="@drawable/tab_bg_unselected"></item>

tab_bg_selected.xml:

   android:shape="rectangle">

<solid android:color="@color/white"/>

<corners android:bottomLeftRadius="5dp"
         android:topLeftRadius="5dp"
         android:topRightRadius="5dp"
         android:bottomRightRadius="5dp"/>
<stroke android:color="@color/blue"
        android:width="2dp"/>
</shape>

和tab_bg_unselected.xml:

   android:shape="rectangle">
<solid android:color="@color/blue"/>

<corners android:bottomLeftRadius="5dp"
         android:topLeftRadius="5dp"
         android:topRightRadius="5dp"
         android:bottomRightRadius="5dp"/>

<stroke android:color="@color/blue"
        android:width="2dp"/>

0 个答案:

没有答案