我想使用TextView来定义TabHost上的TabWidget的样式。
我刚刚创建了一个背景颜色选择器,它运行良好,但是我想创建一个文本颜色选择器,但是文本颜色不改变:
这是我的tab_text_selector.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_selected="true" android:color="@android:color/white" />
<item android:state_focused="true" android:color="@android:color/white" />
<item android:state_pressed="true" android:color="@android:color/white" />
</selector>
这是我在尝试在 TextView 上使用的代码:
TextView txtTab=new TextView(this);
txtTab.setTextColor(R.drawable.tab_text_selector);
txtTab.setBackgroundResource(R.drawable.tab_bg_selector);
txtTab.setGravity(Gravity.CENTER);
txtTab.setText("Agregar Idea");
我知道文字颜色在任何情况下都必须是白色,但它并不是。
android:textColor="@drawable/tab_text_selector"
来更改文本颜色?通过实际编写代码,你会发现android:textColor="@color/tab_text_selector"
是正确的答案。我不知道为什么有人会赞同你的评论,因为它很容易误导人。 - Andytab_text_selector.xml
文件放在哪。根据我的经验,这些文件应该放在res/drawable
文件夹中,但是这个答案说要把它放在res/color
中,这显然可以工作,但有点不寻常。 - k2col