gpt4 book ai didi

android - TextView setTextColor()不起作用

转载 作者:IT老高 更新时间:2023-10-28 13:17:25 30 4
gpt4 key购买 nike

我以编程方式创建此类元素的列表(不是 ListView,只是将它们添加到父级):

    <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" 
android:orientation="vertical" android:layout_weight="1">
<TextView android:id="@+id/filiale_name"
android:layout_width="fill_parent" android:layout_height="wrap_content"/>
<TextView android:id="@+id/lagerstand_text"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:textSize="10sp" android:textColor="@color/red"/>
</LinearLayout>

另外,我在 values/colors.xml 中定义了一些颜色。如您所见,ID 为“lagerstand_text”的 TextView 默认将其颜色设置为红色。这行得通。

在 Java 中创建元素时,我会这样做

lagerstandText.setText("bla");

对于某些元素我也这样做

lagerstandText.setTextColor(R.color.red);

和其他颜色。虽然我不调用 setTextColor() 的元素是红色的,但所有其他元素都是灰色的,无论我选择哪种颜色(即使它再次是相同的红色)。

这是为什么呢?

最佳答案

文档对此不是很详细,但在调用 setTextColor 时不能只使用 R.color 整数。您需要调用 getResources().getColor(R.color.YOURCOLOR) 来正确设置颜色。

使用以下代码以编程方式设置文本颜色:

textView.setTextColor(getResources().getColor(R.color.YOURCOLOR));

从支持库 23 开始,您必须使用以下代码,因为不推荐使用 getColor:

textView.setTextColor(ContextCompat.getColor(context, R.color.YOURCOLOR));

关于android - TextView setTextColor()不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6177273/

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