gpt4 book ai didi

android - 使用选择器更改 TextView 文本颜色

转载 作者:IT王子 更新时间:2023-10-28 23:55:16 25 4
gpt4 key购买 nike

我正在尝试使用 TextView 在 tabhost 上定义 TabWidget 的样式。

我刚刚为 bgcolor 创建了一个选择器并且工作正常,但我想为 textColor 创建一个选择器,但文本颜色没有改变:

这是我的 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");

我知道在任何情况下文本颜色都必须是白色的,但事实并非如此。

最佳答案

1) 使用 tab_text_selector.xml 如下,放入 res/color 文件夹:

<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" />
<item android:color="#504f4f" /> <!-- default case -->
</selector>

并将其设置为您的 TextView ,如下所示..

TextView tv = (TextView) findViewById(R.id.TextView1) ;
tv.setTextColor(context.getResources().getColor(R.color.tab_text_selector));

2) 第二个选项是如果您在 xml 中使用 textview 而不是以编程方式使用,则使用 tab_text_selector.xml 如下:

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:text="TextView"
android:textColor="@‌​drawable/tab_text_sel‌​ector" />

关于android - 使用选择器更改 TextView 文本颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9982182/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com