Android:从 XML 颜色常量以编程方式设置颜色

2022-09-03 17:06:53

尝试将以 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(????);


答案 1

颜色条目应如下所示

<color name="tableHead">#FF444444</color>

和使用tv.setBackgroundResource(R.color.tableHead);


答案 2

用。。

Color.parseColor("#bdbdbd");

喜欢

mTextView.setTextColor(Color.parseColor("#bdbdbd"));

或。。。。。。。。。。。。。。。。。。。。。。

获取所用根布局的句柄,然后设置其背景色。根布局是您称之为 setContentView 的任何内容。

现在获取您正在使用的主布局中包含的任何视图的句柄 //

 View someView = findViewById(R.id.randomViewInMainLayout);

查找根视图

 View root = someView.getRootView()

设置颜色

  root.setBackgroundColor(getResources().getColor(android.R.color.red));