Android BitmapDrawable

BitmapDrawable 是对 Bitmap 的一种封装,可以设置它包装的 bitmapBitmapDrawable 区域中的绘制方式,有平铺填充,拉伸填或保持图片原始大小

BitmapDrawable<bitmap> 为根节点

BitmapDrawable 属性

属性 说明
android:src 图片资源
android:antialias 是否支持抗锯齿
android:filter 是否支持位图过滤,支持的话可以是图批判显示时比较光滑
android:dither 是否对位图进行抖动处理
android:gravity 若位图比容器小,可以设置位图在容器中的相对位置
android:tileMode 指定图片平铺填充容器的模式
设置这个的话,gravity 属性会被忽略
有以下可选值:
disabled (整个图案拉伸平铺)
clamp (原图大小)
repeat (平铺)
mirror (镜像平铺)

使用方式

  1. XML 中使用

    <?xml version="1.0" encoding="utf-8"?>  
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"  
        android:dither="true"  
        android:src="@drawable/ic_launcher"  
        android:tileMode="mirror" />
    
  2. Java 中使用

    BitmapDrawable bitDrawable = new BitmapDrawable(bitmap);  
    bitDrawable.setDither(true);  
    bitDrawable.setTileModeXY(TileMode.MIRROR,TileMode.MIRROR);
    

范例

  1. 创建一个 空的 Android 项目 cn.twle.android.BitmapDrawable

  2. 创建一个 BitmapDrawable 资源

    res/drawable/bitmap.xml

    <?xml version="1.0" encoding="utf-8"?>  
    <bitmap xmlns:android="http://schemas.android.com/apk/res/android"  
        android:dither="true"  
        android:src="@mipmap/ic_launcher"  
        android:tileMode="mirror" />
    
  3. 修改 activity_main.xml 添加一个 ImageView

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">
    
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/bitmap" />
    
    </LinearLayout>
    

android:tileMode="mirror"

第二排图片倒过来了,注意和 repeat 对比

android:tileMode="disabled"

android:tileMode="clamp"

android:tileMode="repeat"

Android 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.