如何通过java更改背景颜色?

如何通过java更改背景颜色?,java,android,Java,Android,你好,我是android开发的新手,我期待着一种改变背景颜色的方法 这是我的密码: super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // View layout = new View(this); // layout.setBackgroundColor(android.R.color.holo_blue_light); // View root = layout.getRootView();

你好,我是android开发的新手,我期待着一种改变背景颜色的方法

这是我的密码:

super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// View layout = new View(this);
// layout.setBackgroundColor(android.R.color.holo_blue_light);
// View root = layout.getRootView();
// root.setBackgroundColor(android.R.color.holo_green_dark);
View view = this.getWindow().getDecorView();
view.setBackgroundColor(R.color.red); 

问题在于语法
view.setBackgroundColor(R.color.red)
试试看:

view.setBackgroundColor(Color.RED); 

问题在于语法
view.setBackgroundColor(R.color.red)
试试看:

view.setBackgroundColor(Color.RED); 
视图.setBackgroundResource(R.drawable.example)

view.setBackgroundResource(R.drawable.example)

使用此选项:-

 view.setBackgroundColor(ContextCompat.getColor(context, R.color.color_name))
这将适当地选择棉花糖双参数方法或预棉花糖方法。

使用此方法:-

 view.setBackgroundColor(ContextCompat.getColor(context, R.color.color_name))

这将适当地选择棉花糖双参数方法或棉花糖前方法。

使用setBackgroundResource()代替setBackgroundColor()或更改布局文件中的背景可能重复使用setBackgroundResource()代替setBackgroundColor()或者更改布局文件中的背景可能与或getResources.getColor(R.color.Red)或getResources.getColor(R.color.Red)重复