尝试将res / values / colors.xml中定义的颜色设置为对象
<?xml version="1.0" encoding="utf-8"?>
<resources>
<drawable name="listViewSelected">@android:color/holo_blue_light</drawable>
<drawable name="listViewPressed">@android:color/holo_green_light</drawable>
<drawable name="pagerTabStrip">#2B3333</drawable>
<!--<drawable name="pagerTabStrip">#353F3E</drawable>-->
<drawable name="tableHead">#FF444444</drawable>
</resources>
我无法弄清楚它为什么不起作用,
我尝试了很多方法(getResources(), Color.parseColor(), ...)
如何设置颜色“tableHead”,例如到TextView?
tv.setBackgroundColor(????);
答案 0 :(得分:15)
颜色条目应该是这样的
<color name="tableHead">#FF444444</color>
并使用tv.setBackgroundResource(R.color.tableHead);
答案 1 :(得分:5)
使用,..
Color.parseColor("#bdbdbd");
等
mTextView.setTextColor(Color.parseColor("#bdbdbd"));
OR ......................
获取所使用的根布局的句柄,然后在其上设置背景颜色。根布局是你用set。的调用setContentView。
//现在获取包含任何View的句柄 //在您正在使用的主要布局中
View someView = findViewById(R.id.randomViewInMainLayout);
//查找根视图
View root = someView.getRootView()
//设置颜色
root.setBackgroundColor(getResources().getColor(android.R.color.red));
答案 2 :(得分:2)
您的color.xml应如下所示:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="tableHead">#FF444444</color>
</resources>
如何使用此颜色在textview中设置:像这样
tv.setBackgroundColor(getResources().getColor(R.color.tableHead));
答案 3 :(得分:2)
tv.setTextColor(getResources().getColor(R.color.tableHead));
猜猜你的colors.xml应该是什么样的
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="tableHead">#FF444444</color>
</resources>
答案 4 :(得分:1)
尝试这样的事情:
tv.setBackgroundResource(Color.parseColor("#ffffff"));
答案 5 :(得分:1)
首先修改color.xml,如下所示
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="listViewSelected">@android:color/holo_blue_light</drawable>
<color name="listViewPressed">@android:color/holo_green_light</drawable>
<color name="pagerTabStrip">#2B3333</drawable>
<!--<color name="pagerTabStrip">#353F3E</drawable>-->
<color name="tableHead">#FF444444</drawable>
</resources>
要设置textview背景颜色,您可以这样做
tv.setBackgroundColor(R.color.tableHead);
另外,为了设置textview textcolor,你可以这样做
tv_empty.setTextColor(R.color.tableHead)
答案 6 :(得分:0)
如果颜色常量中存在某种颜色,例如
<color name="error_red_color">#f00</color>
然后可以将其设置如下-
tv.setTextColor(ContextCompat.getColor(context, R.color.error_red_color))
或
tv.setTextColor(getResources().getColor(R.color.error_red_color, null))
其他方法是-
tv.setTextColor(Color.RED);
tv.setTextColor(Color.parseColor("#FFFFFF"));
tv.setTextColor(Color.rgb(100,100,100));