Android系统.从代码中更改FrameLayout的背景颜色

Vla*_*eys 9 java xml user-interface android

我正在尝试更改FramyLayout的背景颜色.颜色正在改变,但错误的颜色.

但是,如果我通过XML完成它,它工作正常.

这是我的res/values/colors.xml代码

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <color name="grey">#888888</color>
    <color name="white">#FFFFFF</color>
    <color name="red">#ffff3448</color>
    <color name="green">#ff408c3a</color>
</resources>
Run Code Online (Sandbox Code Playgroud)

以下是我在XML中进行更改时的样子 颜色改变正确

如果我尝试使用代码,那就是正在发生的事情

 FrameLayout frameLayoutBalance = (FrameLayout)view.findViewById(R.id.frameLayoutBalance);
 frameLayoutBalance.setBackgroundColor(R.color.green);
Run Code Online (Sandbox Code Playgroud)

颜色改变不正确

Viv*_*wal 10

你不应该使用frameLayoutBalance.setBackgroundColor(R.color.green);

setBackgroundColor需要一个Color(即Chirag Raval描述的值)而不是颜色资源.

使用此frameLayoutBalance.setBackgroundColor(getResources().getColor(R.color.green));