Android资源知识(四)之XML Bitmap

作者: 码道成功 | 来源:发表于2016-11-08 10:24 被阅读801次

    XML Bitmap资源实际上就是定义在XML中指向bitmap文件的资源。其效果就是为drawable目录中原生的bitmap资源提供了一个别名(alias)。标签 <bitmap>通常会结合state listlayer list一起使用。例如,可以把<bitmap>作为<item>的子元素。


    文件路径:res/drawable/filename.xml
    文件名作为资源ID。
    引用方式如下:
    In Java:** R.drawable.filename**
    In XML:** @[package:]drawable/filename**
    语法示例如下:

    <?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" |
                          "center" | "fill" | "clip_vertical" | "clip_horizontal"]
        android:mipMap=["true" | "false"]
        android:tileMode=["disabled" | "clamp" | "repeat" | "mirror"] />
    

    属性说明:
    src:图片的资源ID
    antialias:是否开启抗锯齿效果,开启后图片将会变得更加平滑
    dither:是否开启抖动效果,官方说明如下,

    Enables or disables dithering of the bitmap if the bitmap does not have the same pixel configuration as the screen (for instance: a ARGB 8888 bitmap with an RGB 565 screen).
    当图片的像素和屏幕的像素不一致时,开启该属性后能保持更好的显示效果。例如,图片的彩色模式为ARGB8888,而屏幕的彩色模式为RGB555,这样就能保证图片显示不失真。

    filter:当图片被拉伸或压缩时能平滑过度,保证更好的显示效果。
    tileMode:平铺效果,其值为disableclamprepeatmirror,disable为默认值。repeat是在垂直和水平方向上平铺,clamp是把图片四周的像素扩展到周围区域,mirror是在图片的水平和垂直方向实现镜像效果。
    gravity:当图片的尺寸小于容器的尺寸时,可以通过该属性设置图片的显示位置。当设置tileMode属性为enable状态时,gravity属性将被忽略。
    示例代码如下:

    <?xml version="1.0" encoding="utf-8"?>
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"
        android:src="@drawable/icon"
        android:tileMode="repeat" />
    

    相关文章

      网友评论

        本文标题:Android资源知识(四)之XML Bitmap

        本文链接:https://www.haomeiwen.com/subject/wudauttx.html