0

我正在尝试为 android 中的 tablerow 设置背景颜色,并且无法引用正确的 int。下面是代码。难道我做错了什么?背景中出现的颜色是浅灰色。

   <?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="app_name">Trackfolio</string>
    <color name="colorWhite">#FFFFFF</color>
    <color name="colorBlack">#000000</color>
    <color name="colorLightBlue">#6495ED</color>
</resources>

row.setBackgroundColor(R.color.colorLightBlue);

还有没有办法设置文字颜色?

tv.setTextColor(R.color.colorBlack);
4

3 回答 3

3

cfarm54,

您访问颜色的方式是在 R.java gen 文件中获取偏移位置。

您需要像这样访问它们...

Resources res = context.getResources();
row.setBackgroundColor(res.getColor(R.color.high_priority));
于 2011-03-18T19:43:12.013 回答
0

哎呀:愚蠢的我,您应该在引用颜色资源时使用 tableRow.setBackgroundResource() 。

于 2011-03-18T19:42:41.037 回答
0

试试setBackgroundResource(int color)。UsingsetBackgroundColor使用 R.color.colorLightBlue 用于引用您定义的颜色的 int,并尝试将其解析为颜色,而不是检索引用的颜色。

于 2011-03-18T19:42:43.127 回答