3

我正在尝试设置一个非常简单的布局的背景:

  LinearLayout ll = (LinearLayout) findViewById(R.id.simple_layout);

这有效:

  ll.setBackgroundColor(Color.WHITE);

但这不会:

  ll.setBackgroundColor(R.color.white);

是的,我验证了它R.color.white是在 .xml 文件下的 colors.xml 文件中定义的/res/values

我错过了什么?

4

2 回答 2

7

你需要使用ll.setBackgroundResource(R.color.white)

于 2012-07-23T00:16:25.023 回答
1

正如@Ali 指出的那样,当您在 XML 中设置它时,它就会成为一种资源。这显然很令人困惑,因为您不将其视为资源,而是将其视为价值。但就像所有其他资源一样,它是一种资源。所以是的,你必须使用 setBackgroundResource()

于 2012-07-23T00:22:59.253 回答