其他Draw文章参考:
Android中Drawable整体介绍
时间
从API Level 1添加。
包
android.graphics.drawable.BitmapDrawable
父类
android.graphics.drawable.Drawable
官方介绍
一个可绘制的位图,可以平铺,拉伸或对齐。 您可以从文件路径,输入流,XML填充或位图对象创建一个BitmapDrawable。
它可以使用元素在XML文件中定义。
该类处理原始位图图形的管理和转换,并应在绘制到“画布”时使用
XML 属性
android:antialias 是否开启图片抗锯齿功能
启用或禁用抗锯齿。 旋转时,可以使用抗锯齿来平滑位图的边缘。 默认值是false。
可能是一个布尔值,如“true”或“false”。
开启后会让图片变得光滑,但是可以忽略的降低图片的清晰度。
android:dither 是否开启防抖动效果
如果位图不具有与屏幕相同的像素配置(例如:具有RGB 565屏幕的ARGB 8888位图),则启用或禁用位图抖动。 默认值为true。
可能是一个布尔值,如“true”或“false”。
当图片的像素配置和手机屏幕的像素配置不一致时,开启这个可以让高质量的图片在低质量的屏幕上还有较好的显示效果。
Android中图片一般都会选择ARGB8888这样一个像素占4个字节大小。
android:filter 是否开启过滤效果
启用或禁用位图过滤。 当位图缩小或拉伸以平滑其外观时,将使用过滤。 默认值为true。
可能是一个布尔值,如“true”或“false”。
当图片尺寸被拉伸或者被压缩时候,可以较好的保持显示
android:gravity
定义位图的重力。 如果位图比容器小,则重力表示绘图在其容器中的位置。
必须是以下常量值中的一个或多个(用'|'分隔)
top:图片放在容器顶部 ,不改变图片大小
bottom:图片放在容器底部,不改变图片大小
left:图片放在容器左侧,不改变图片大小
right:土坯啊您放在容器右侧,不改变图片大小
center_vertical:是图片竖直居中,不改变图片大小
fill_vertical:图片竖直方向填充容器
cennter_horizonntal:使图片水平居中,不改变图片大小
fill_horizontal:图片水平方向填充容器
center:使图片在水平和竖直方向上同时居中,不改变图片大小
fill:图片在水平和竖直方向上填充容器,这是默认值
clip_vertical:附加选项,竖直方向上裁剪
clip_horizontal:附加选项,水平方向上裁剪
start:将图片推到容器的开始位置,而不是改变它的大小。
end:将图片推到容器的结束位置,而不改变它的大小。
android:mipMap
指示是否在此drawable的位图上启用mipmap提示。一般用不到,默认是false
android:src 指定资源
位图文件的标识符。 该属性是强制性的。
可以以“@ [+] [package:] type / name”格式或以“?[package:] type / name”形式的另一个资源的引用。
可以是“#rgb”,“#argb”,“#rrggbb”或“#aarrggbb”形式的颜色值。
android:tileMode 平铺模式
定义平铺模式。 当启用平铺模式时,重复位图。 启用平铺模式时会忽略重力。 默认值是“禁用”。
可以选择如下几个值:
clamp:复制边缘颜色。图片四周的像素会扩散到周围
disabled:不要平铺位图。 这是默认值。
mirror:在水平和竖直方向上的镜面投影效果
repeat:在水平和竖直方向上的平铺效果
android:tileModeX
和上面类似,不过方向变成了只在水平方向
android:tileModeY
和上面类似,不过方向上只在竖直方向
使用
一张图片可以直接去使用,也可以通过XML采用上述属性去描述图片。
(1)
在布局文件中给View直接设置背景 。
(2)
动态使用
构造方法
BitmapDrawable ()
创建一个空的drawable,此方法在API 4的时候被弃用,在API 1中添加
BitmapDrawable(Resources res)
创建一个空的drawable,根据资源的显示度量设置初始目标密度。
此方法在API 18被弃用
BitmapDrawable (Bitmap bitmap)
此方法在API 4被弃用
BitmapDrawable (Resources res, Bitmap bitmap)
从位图创建drawable,根据资源的显示度量设置初始目标密度。
BitmapDrawable (String filepath)
通过打开给定的文件路径并解码位图来创建绘图。
此方法在API 5 被弃用
BitmapDrawable (Resources res, String filepath)
通过打开给定的文件路径并解码位图来创建绘图。
BitmapDrawable (InputStream is)
此方法在API5被弃用
BitmapDrawable (Resources res, InputStream is)
通过解码来自给定输入流的位图来创建绘图。
公共方法
用的不多,暂不介绍