设置背景信息:
RelativeLayout layout = (RelativeLayout) findViewById(R.id.background);
layout.setBackgroundResource(R.drawable.ready);
这是最好的方法吗?
设置背景信息:
RelativeLayout layout = (RelativeLayout) findViewById(R.id.background);
layout.setBackgroundResource(R.drawable.ready);
这是最好的方法吗?
当前回答
我正在使用minSdkVersion 16和targetSdkVersion 23。 以下是为我工作,它使用
ContextCompat.getDrawable(context, R.drawable.drawable);
而不是使用:
layout.setBackgroundResource(R.drawable.ready);
而使用:
layout.setBackground(ContextCompat.getDrawable(this, R.drawable.ready));
getActivity()在片段中使用,如果从活动调用则使用此方法。
其他回答
试试这个:
layout.setBackground(ContextCompat.getDrawable(context, R.drawable.ready));
对于API 16<:
layout.setBackgroundDrawable(ContextCompat.getDrawable(context, R.drawable.ready));
我正在使用minSdkVersion 16和targetSdkVersion 23。 以下是为我工作,它使用
ContextCompat.getDrawable(context, R.drawable.drawable);
而不是使用:
layout.setBackgroundResource(R.drawable.ready);
而使用:
layout.setBackground(ContextCompat.getDrawable(this, R.drawable.ready));
getActivity()在片段中使用,如果从活动调用则使用此方法。
如果您的背景现在在drawable文件夹中,请尝试将图像从drawable文件夹移动到项目中的drawable-nodpi文件夹。这为我工作,似乎其他图像是由他们自己重新缩放。
setBackground(getContext().getResources().getDrawable(R.drawable.green_rounded_frame));
试试下面的代码:
Drawable thumb = ContextCompat.getDrawable(getActivity(), R.mipmap.cir_32);
mSeekBar.setThumb(thumb);