我正在从服务器下载图片并将其存储在位图对象中。我想将此图像设置为按钮的背景。但是,该按钮没有setImageBitmap属性。那么,有没有办法使用下载的位图图像设置按钮的背景?比如将位图转换为drawable?抱歉,我对Android很陌生,请包容我的错误(如果有的话)。
附注:我只想使用按钮控件。因为我希望每个按钮底部都有一些文本,并且我正在动态创建这些按钮。
附注:我只想使用按钮控件。因为我希望每个按钮底部都有一些文本,并且我正在动态创建这些按钮。
Bitmap
转换为 drawable 的最佳方法如下:Drawable drawable = new BitmapDrawable(getResources(), bitmap);
其中bitmap
是Bitmap
的名称。然后将可绘制对象设置为您的Button
背景,如下所示:
其中bitmap
是Bitmap
的名称。然后将可绘制对象设置为您的Button
背景,如下所示,
btn.setBackground(drawable);
注意: 如果没有将getResources()
指定为第一个参数,则可能会在不同屏幕密度下出现不一致的图像大小。
欲了解更多信息,请参考http://developer.android.com/reference/android/graphics/drawable/BitmapDrawable.html
像这样将 Bitmap
转换为 BitmapDrawable
Drawable drawable = new BitmapDrawable(getResources(),your_bitmap);
button.setBackgroundDrawable(drawable);
P.S. 你也可以内联地进行相同的操作,如下所示:
button.setBackgroundDrawable(new BitmapDrawable(getResources(),your_bitmap));
这是如何做到的,我已经使用过多次:
Drawable drawable = (Drawable)new BitmapDrawable(Bitmap);
Button button= new Button(this);
button.setBackground(drawable);
Bitmap
转换为BimapDrawable
。 - M D