Android 使用LayerDrawable自定制SeekBar的外观

前言

LayerDrawable包含了一个Drawable数组,系统会按照Drawable对象数组的顺序来绘制它们,索引最大的对象将会被绘制在最上面。
定义LayerDrawable对象的XML文件的根元素是:<layer-list.../>,该元素可以包含多个<item../>元素,该元素可以指定如下属性:
* android:drawable:指定作为LayerDrawable元素之一的Drawable对象。
* android:id:为该Drawable对象指定一个标识。
* android:buttomltoplleftlbutton:它们用于指定一个长度值,用于指定将该Drawable对象绘制到目标组件的指定位置。

实例:定制SeekBar拖动条的外观

  • 1,在res–>drawable目录下右键new一个Drawable Resource File,根元素选择layer-list:
    这里写图片描述

  • 2,定义两个item,其中第一个为SeekBar拖动前的默认背景,后一个为拖动后的背景:

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@android:id/background"
        android:drawable="@mipmap/seekbar_default" />
    <item
        android:id="@android:id/progress"
        android:drawable="@mipmap/seekbar_selected" />
</layer-list>
  • 3,定义progerssDrawable为我们刚刚自己定义的Drawable:
<SeekBar
    android:progressDrawable="@drawable/my_seekbar"
    android:layout_width="match_parent"
    android:layout_height="40dp" />

运行结果:

这里写图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值