use*_*646 120 android background-color
我尝试以编程方式设置背景颜色,但是当我设置每种颜色时,背景为黑色,但任何颜色背景都是白色,就像应用程序主题一样.
View someView = findViewById(R.id.screen);
View root = someView.getRootView();
root.setBackgroundColor(color.white);
Run Code Online (Sandbox Code Playgroud)
你能看到代码吗?
Moh*_*ULI 158
我不明白你的问题......"当我设置我的每一种颜色时"是什么意思?试试这个(编辑:原来的答案中的"#fffff"改为"#ffffff"
yourView.setBackgroundColor(Color.parseColor("#ffffff"));
Run Code Online (Sandbox Code Playgroud)
Sai*_*ate 86
你需要使用getResources()方法,尝试使用以下代码
View someView = findViewById(R.id.screen);
View root = someView.getRootView();
root.setBackgroundColor(getResources().getColor(color.white));
Run Code Online (Sandbox Code Playgroud)
编辑::
不推荐使用getResources.getColor(),使用如下所示
root.setBackgroundColor(ContextCompat.getColor(this, R.color.white));
Run Code Online (Sandbox Code Playgroud)
Piy*_*ush 35
您可以使用
root.setBackgroundColor(0xFFFFFFFF);
Run Code Online (Sandbox Code Playgroud)
要么
root.setBackgroundColor(Color.parseColor("#ffffff"));
Run Code Online (Sandbox Code Playgroud)
Yoa*_*uet 30
以前的答案现已弃用,您需要使用它ContextCompat.getColor来正确检索颜色:
root.setBackgroundColor(ContextCompat.getColor(getActivity(), R.color.white));
Run Code Online (Sandbox Code Playgroud)
Sur*_*gch 12
如果你只是想使用一些预定义的Android颜色,你可以使用Color.COLOR(其中COLOR为BLACK,WHITE,RED等):
myView.setBackgroundColor(Color.GREEN);
Run Code Online (Sandbox Code Playgroud)
否则你可以按照别人的建议去做
myView.setBackgroundColor(ContextCompat.getColor(getActivity(), R.color.myCustomGreen));
Run Code Online (Sandbox Code Playgroud)
我不建议直接使用十六进制颜色.您应该在colors.xml中保留所有自定义颜色.
这必须工作:
您必须使用getResources()。getColor(R.color.WHITE)来获取颜色资源,必须将其添加到colors.xml资源文件中
View someView = findViewById(R.id.screen);
someView.setBackgroundColor(getResources().getColor(R.color.WHITE));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
207373 次 |
| 最近记录: |