我必须经常在我的代码中进行这些检查,并且我想知道是否有一种干净的方式来获取资源而无需编写if语句来检查版本。
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
{
imageView.setImageDrawable(getDrawable(R.drawable.ic_circled_v));
}
else
{
imageView.setImageDrawable(getResources().getDrawable(R.drawable.ic_circled_v));
}
答案 0 :(得分:4)
这是您获取可绘制资源并保持向后兼容性的方法。
这是您要在“活动”中使用的代码:
imageView.setImageDrawable(ContextCompat.getDrawable(this, R.drawable.icon_heart_fill_red));
其中 icon_heart_fill_red 是您的drawable的名称。
答案 1 :(得分:1)
使用注释,@ requireApi或@targetApi