android - 以编程方式更改布局的背景颜色

标签 android android-layout

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/

相关文章:

android - 如何从 Java apk 或 ndk 启动或执行可执行应用程序

android - 在 Android 应用程序中重新启动 Activity 后无法看到 View

android - Android 中 Activity 与其布局的关系

android - 将 Retrofit 2 添加到 Gradle 中给出未能解决

android - Kotlin 反射 : primaryConstructor not found with R8 obfuscation

android - 在可重用布局中单击处理我的按钮有什么问题?

java - 创建安卓问答游戏,无法进行下一个任务。正确回答后

java - 我想要一种方法来隐藏 EditText 中的光标

java - 如何扩大 View 的阴影半径

android - 如何使用 'CMakeLists.txt' 中的 add_library 将整个文件(.cpp、.h 等)包含在目录中