我想通过以下方式更改framelayout的背景(包含我的所有页面!)。
FrameLayout fl = (FrameLayout)findViewById(R.id.container);
fl.setBackground(getResources().getDrawable(R.drawable.juraquiz_app_background));
但显然我不能。有没有办法做到这一点,所以它与低于16的API兼容?
答案 0 :(得分:1)
对于API低于16,您可以使用setBackgroundDrawable
答案 1 :(得分:1)
对不同的API使用不同的方法:
final Drawable drw = getResources().getDrawable(R.drawable.juraquiz_app_background);
if(android.os.Build.VERSION.SDK_INT < 16)
{
fl.setBackgroundDrawable(drw);
}
else
{
fl.setBackground(drw);
}
您需要在方法中添加注释(或者如果您愿意,还可以添加到您的班级)以删除Lint警告:
的 @SuppressLint(&#34; NewApi&#34)强>