在string.xml文件中,我使用以下标记

<color name="mycolor1">#F5DC49</color>

如果我用
 textview1.setTextColor(Color.CYAN);

它有效,但是
 textview1.setTextColor(R.color.mycolor1);

不管用。

如何使用XML文件中定义的颜色?

最佳答案

TextView.setTextColor()采用表示颜色的int值(例如0xFFF5DC49),而不是xml文件中的资源ID。在一项 Activity 中,您可以执行以下操作:

   textView1.setTextColor(getResources().getColor(R.color.mycolor))

在 Activity 之外,您需要一个Context例如。
   textView1.setTextColor(context.getResources().getColor(R.color.mycolor))

10-05 19:47