在Android中将位图转换为drawable

时间:2014-04-16 10:40:16

标签: android

我从服务器下载图像并将其存储在位图对象中。我想将此图像设置为按钮的背景。但该按钮没有属性setImageBitmap。那么无论如何我可以用下载的位图图像设置按钮的背景吗?喜欢将位图转换为drawable?对不起,我是Android新手,请承担我的错误(如果有的话)。

P.S:我只想使用按钮控制。因为我想在每个按钮的底部有一些文字,我正在动态创建这些按钮。

4 个答案:

答案 0 :(得分:18)

在android中将Bitmap转换为drawable的最佳方法如下,

Drawable drawable = new BitmapDrawable(getResources(), bitmap); 

其中bitmapBitmap的名称。然后将drawable设置为Button背景,如下所示,

btn.setBackground(drawable);

N.B:如果没有指定getResources()作为第一个参数,则可能会在不同的屏幕密度上遇到不一致的图像大小调整。

了解更多信息请参阅此内容 http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html

答案 1 :(得分:1)

只需使用BitmapDrawable

Drawable drawable=new BitmapDrawable(contact_pic); 

答案 2 :(得分:1)

Bitmap转换为BitmapDrawable,就像这样

Drawable drawable = new BitmapDrawable(getResources(),your_bitmap);

然后将其设置为按钮的背景,

button.setBackgroundDrawable(drawable);

P.S。您也可以使用相同的内联方式

button.setBackgroundDrawable(new BitmapDrawable(getResources(),your_bitmap));

答案 3 :(得分:1)

这是怎么做的,我已多次使用过:

Drawable drawable = (Drawable)new BitmapDrawable(Bitmap);    
Button button= new Button(this);    
button.setBackground(drawable);