Android Studio 0.4.6
minSdkVersion 10
targetSdkVersion 19
我有一个名为 ReadingLamp
的 Activity 和一个名为 activity_reading_lamp.xml
的 Relativelayout。
我正在尝试以编程方式将布局设置为不同的背景颜色。
在我的 onCreate 中并将内容 View 设置为此布局。
setContentView(R.layout.activity_reading_lamp);
我尝试通过执行以下操作获取 Root View :
mActivityBackground = getWindow().getDecorView().getRootView();
稍后在我的应用程序中我想更改颜色,所以我这样做:
mActivityBackground.setBackgroundColor(Color.parseColor("#0cf5ff"));
然而,上面的行并没有做任何改变背景的事情。
我也尝试过以下操作:
mActivityBackground = (RelativeLayout)findViewById(R.layout.activity_reading_lamp);
我的代码哪里出错了?
最佳答案
您已在Activity
中声明setContentView(R.layout.activity_reading_lamp);
。然后你应该寻找你想要改变背景颜色的 View 。它必须属于 R.layout.activity_reading_lamp
。
View view = findViewById(R.id.declared_inside_reading_lamp);
然后就可以调用了
view.setBackgroundColor(Color.GREEN)
关于android - 以编程方式更改布局的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22166652/