如何从资源创建Drawable
我有一个图像res/drawable/test.png
(R.drawable.test)。
我想将这个图像传递给一个接受Drawable
的函数。
(例如mButton.setCompoundDrawables())
那么如何将图像资源转换为Drawable
?
你的活动应该有方法getResources。 做:
Drawable myIcon = getResources().getDrawable( R.drawable.icon );
此代码已弃用。
Drawable drawable = getResources().getDrawable( R.drawable.icon );
使用这个instad。
Drawable drawable = ContextCompat.getDrawable(getApplicationContext(),R.drawable.icon);
getDrawable (int id)
方法在API 22中折旧。
相反,您应该使用API 21+的getDrawable (int id, Resources.Theme theme)
代码看起来像这样。
Drawable myDrawable;
if(android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP){
myDrawable = context.getResources().getDrawable(id, context.getTheme());
} else {
myDrawable = context.getResources().getDrawable(id);
}
链接地址: http://www.djcxy.com/p/63777.html
上一篇: How to create Drawable from resource
下一篇: MySQL query to get sum of differences between column and AVG of same column