Android drawable layer-list 牛刀小试

简介: Android drawable layer-list 牛刀小试

平台


Android 9.0 + AndroidStudio


要求


在res/drawable/下, 通过编译XML实现CheckBox的图片效果, 如图:


未选中:

image.png

选中:

image.png


实现


未选中(ic_checkbox_off), 这个好实现, 通常写drawable都知道有那么几种形状


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <shape>
            <size android:width="18dp" android:height="18dp"/>
            <corners android:radius="9dp"/>
            <stroke android:color="#FFBC6500" android:width="1dp"/>
        </shape>
    </item>
</selector>


选中(layer_checkbox_on), 本文的重点


<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:width="18dp" android:height="18dp">
        <shape>
            <corners android:radius="9dp"/>
            <stroke android:color="#FFBC6500" android:width="1dp"/>
        </shape>
    </item>
    <item android:gravity="center"
        android:width="10dp" android:height="10dp">
           <shape>
               <corners android:radius="5dp"/>
               <solid android:color="#FFBC6500" />
           </shape>
       </item>
</layer-list>


需要使用layer-list来实现.


最后, 再加个selector:


<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="true"
        android:drawable="@drawable/layer_checkbox_on"/>
    <item android:drawable="@drawable/ic_checkbox_off"/>
</selector>


扩展


layer-list – layer-list的基本使用介绍


相关文章
|
2天前
|
XML 存储 编解码
android 目录结构中 drawable(hdpi,ldpi,mdpi) 的区别
android 目录结构中 drawable(hdpi,ldpi,mdpi) 的区别
|
4月前
|
XML 编解码 Android开发
Android各种各样的Drawable-更新中
Android各种各样的Drawable-更新中
59 0
|
5月前
|
Android开发
[Android]Layer Drawable
[Android]Layer Drawable
26 0
|
5月前
|
Android开发
[Android]Shape Drawable
[Android]Shape Drawable
44 0
|
5月前
|
XML Android开发 数据格式
[Android]Bitmap Drawable
[Android]Bitmap Drawable
29 0
|
5月前
|
XML 编解码 Android开发
Android Studio App开发入门之图形定制Drawable的讲解及实战(附源码 超详细必看)
Android Studio App开发入门之图形定制Drawable的讲解及实战(附源码 超详细必看)
50 1
|
9月前
|
Android开发
Android 通过Vector Drawable绘制心形
Android 通过Vector Drawable绘制心形
55 0
|
9月前
|
XML Android开发 数据格式
Android drawable 与 mipmap 文件夹存放图片有区别
Android drawable 与 mipmap 文件夹存放图片有区别
63 0
|
10月前
|
XML 编解码 API
|
10月前
|
编解码 Android开发