我有一个代码,用于通过java代码
更改我的活动的BackGroud颜色View view = this.getWindow().getDecorView();
view.setBackgroundColor(color);
我有一个公共类,我在其中定义所有常用方法
public class MyClass {
public static void myToast(String msg , Context context)
{
int duration = Toast.LENGTH_LONG;
Toast.makeText(context, msg, duration).show();
}
public void setBackGroundColor(int color)
{
// View view = this.getWindow().getDecorView();
//view.setBackgroundColor(color);
}
}
我如何在方法调用中传递'this'?(使用this.getWindow()。getDecorView()) 它('this')和上下文一样吗? 颜色是int类型? 我对它完全感到困惑 需要答案和建议 提前致谢
答案 0 :(得分:0)
我如何在方法调用中传递'this'?
this
表示当前的Activity上下文,因此您应将第二个参数添加到setBackGroundColor
作为Activity:
public void setBackGroundColor(int color,Activity activity)
{
View view = activity.getWindow().getDecorView();
view.setBackgroundColor(color);
}
答案 1 :(得分:0)
您可以通过布局设置颜色的十六进制代码,即.xml文件。
如果您想将背景更改为图片,请在上面的代码中提到装饰;你可以实现
view.setBackgroundResource(R.drawable.drawableName);
是的Color是一种int类型。您也可以这样使用语法:
public void setBackGroundColor(Color color){
}