Drawable的分类:BitmapDrawable、ShapeDrawable、LayerDrawable、StateListDrawable、LevelListDrawable、InsetDrawable、ScaleDrawable、ClipDrawable
BitmapDrawable
使用方法连接>http://www.2cto.com/kf/201304/205818.html
表示一张图片,可以直接引用原始图片、也可以用xml(存放在res/drawable/)方式表示
表示方式为:
<?xml version="1.0" encoding="utf-8"?>
<bitmap
xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@[package:]drawable/drawable_resource"
android:antialias=["true" | "false"]
android:dither=["true" | "false"]
android:filter=["true" | "false"]
android:gravity=["top" | "bottom" | "left" | "right" | "center_vertical" |
"fill_vertical" | "center_horizontal" | "fill_horizontal" |
android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />
属性含义
android:src
表示图片的资源android:antialias
表示图片是否开启抗锯齿功能,开启后图片变的光滑,但是也会降低图片的清晰度,应开启android:dither
表示是否开启抖动效果。当图片的像素配置和手机的像素配置不一致的时候,开启这个选项可以让高质量的图片在低质量的屏幕上还能保持好的显示效果,如果图片的色彩模式是ARGB8888,但是设备屏幕锁支持的色彩模式是RGB555,这个时候开启这个选项可以让图片不会失真。在Android中创建的Bitmap一般会选用ARGB888模式,ARGB是个通道各站8位,一个像素所占的大小为4个字节,一个像素的位数总和越高,图像也越逼真。android:filter
表示是否开启过滤效果,当图片尺寸被拉伸或者压缩,开启过滤效果可以保持较好的显示效果android:gravity
可选项 | 含义 |
---|---|
top | 将图片放在容器的顶部,不改变图片的大小 |
bottom | 将图片放在容器的底部,不改变图片的大小 |
left | 将图片放在容器的左部,不改变图片的大小 |
right | 将图片放在容器的右部,不改变图片的大小 |
fill_vertical | 使图片竖直居中,不改变图片的大小 |
center_horizontal | 使图片水平居中,不改变图片的大小 |
fill_horizontal | 使图片水平方向填满容器 |
center | 使图片在水平和竖直方向同时居中,不改变图片的大小 |
fill | 图片在水平和竖直方向填满容器,这是默认值 |
clip_vertical | 附加选项,表示竖直方向的裁剪,较少使用 |
cilo_horizontal | 附加选项,表示水平方向的裁剪,较少使用 |
6. android:mipMap文理映射,默认值是false
7. android:title
平铺模式repeat、mirror、clamp区别;
repeat表示简单的水平和竖直方向上的平铺效果;
mirror表示一种在水平和竖直方向上的镜面投影效果;
clamp表示将图片四周的像素扩展到周围。