LayerDrawable
最近在开发一个需求的时候,要做一个seekbar,它是这样的:
背景和进度条都好说,但是那个滑动按钮就不好整了,里面的图片是用户的头像,需要动态更新的,而且用户的头像也没有这个黄色的外边框啊,我查了一下seekbar的方法,发现seekbar.setThumb(Drawable drawable),那我怎么才能生成这样的drawable呢,网上找了半天,发现了LayerDrawable,看着很眼熟,具体查看之后才发现,原来LayerDrawable就是我们在xml里定义的layer-list,就是一个层叠的drawable。
Drawable[] array = new Drawable[2]; array[0] = getContext().getResources().getDrawable(R.drawable.bg_tots_select_seek_thumb); array[1] = frontDrawable; LayerDrawable result = new LayerDrawable(array); result.setLayerInset(0, 0, 0, 0, 0); result.setLayerInset(1, 7, 7, 7, 7); mSeekBar.setThumb(result); mSeekBar.setThumbOffset(0);
所以我就用这个方法生成了seekbar的thumb,LayerDrawable需要传入一个drawable数组,数组里的drawable从下到上层叠在一起,setLayerInset()方法是给drawable设置padding的,第一个参数是drawable的位置,后面四个参数对应着left,top,right,bottom的padding。
生成了drawable之后用seekbar.setThumb方法就能把drawable设置成按钮了,最好setThumbOffset是指按钮不能超出seekbar的宽度。
LayerDrawable相关推荐
- [原创]android使用代码生成LayerDrawable的方法和注意事项
为了有更好的UI体验,一般我们会把button.textview等控件的背景设置上阴影.传统的做法是美工提供一张具有阴影效果的nine patch图,然后将其在xml文件中添加到background属 ...
- LayerDrawable层叠样式layer
2019独角兽企业重金招聘Python工程师标准>>> layer-list可以将多个图片按照顺序层叠起来. 语法:在drawalbe/drawable-layer.xml中 < ...
- android 图片叠加xml,Drawable子类之——LayerDrawable (图层叠加)
本文出自 "阿敏其人" 简书博客,转载或引用请注明出处. LayerDrawable对应的XML的根元素是,,它使一种层次化显示的Drawable集合.也就说,可以通过显示由多个D ...
- Android:使用LayerDrawable动态生成四宫格头像(包含双人、三人头像)
其实用自定义View也可以实现,我比较懒,就用LayerDrawable来创建一个新的Drawable资源实现. 举例4宫格,9宫格原理类似,每个图标的位置需要用边距慢慢调成预期的效果 效果如下: 双 ...
- android沉浸式状态栏 图片背景,Android 补充 LayerDrawable 沉浸式状态栏
小菜前些日子整理了两次小小的沉浸式状态栏的总结:Android 沉浸式状态栏的多种样式 和 Android 沉浸式状态栏以及伪沉浸式状态栏.今天小菜再稍稍补充一点,Java/Kotlin 代码中设置 ...
- Android Drawable 详解(教你画画!)
参考 1.Android中的Drawable基础与自定义Drawable 2.android中的drawable资源 3.Android开发之Shape详细解读 Drawable分类 No xml标签 ...
- Android Layer List 使用实现实例
Layer List是Anroid中的一种图形的方式,它是通过叠加若干张图片的方式来形成最终的图片,最终的图片在代码中表现为一个LayerDrawable对象. 效果图:第一张是默认显示,第二张为按改 ...
- android layerlist bitmap,android – 在LayerListDrawable中更改Bitmap Drawable
这是我的LayerList的简化版本.它在项目中有一个位图以防止缩放.我想以编程方式更改此位图的drawable.有没有办法做到这一点? android:id="@+id/item" ...
- android xml opacity,Android Drawable详解
前言 Drawable就是一个可画的对象,表示一种可以在Canvas上进行绘制的抽象的概念,其可能是一张(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个 ...
最新文章
- 工业相机和镜头说明与图像采集
- F5定时切换维护页面
- GitHub, Google Code, and other
- Linux性能分析工具与图形化方法
- 贷款用途有什么限制?非法用途有什么后果?
- 工科神器matlab高校遭禁用,网友:关我p事,python可取而代之
- 小汤学编程之JavaEE学习day04——EL表达式、JSTL
- SpringBoot使用CommandLineRunner和ApplicationRunner执行初始化业务
- Spark团队开源新项目MLflow发布0.2版本,内置TensorFlow集成
- imp 只导表前10条数据_2020年玉石行情,从10条数据就能略窥一二
- ceph cluster monitor
- 吉他音阶训练——问题解答 (三)
- 换个服务器后网页加载很慢,打开网页很缓慢?换个DNS轻松解决问题
- linux 6重启网卡,centos 网卡重启方法
- python sklearn逻辑回归 sgd和lr_LR逻辑回归模型的原理、公式推导、Python实现和应用...
- Bhuman应用篇——带球及踢球
- android热门搜索标签,Android网易云历史搜索和热门标签
- 服务器选共享IP还是独立IP好
- web前端期末大作业 HTML+CSS+JavaScript web课程设计网页规划与设计 企业网站制作
- 笔记:区块链基础(一)
热门文章
- java List分组
- python脚本工作实例
- DuiVision开发教程(7)-系统预定义控件、动作和事件
- 数形结合「求解」希尔伯特第13个数学难题
- Linux SPI 应用编程
- Ajax上传文件,后端返回文件访问路径
- 计算机系统的组成观评课报告,教师远程研修观课评课报告
- 鸿蒙os 2.0玩吃鸡,华为鸿蒙OS2.0[敏感词汇屏蔽]能简测:极致画质下的吃鸡王者更胜EMUI11...
- java学业有成_祝福学业有成的句子
- 陈二狗的妖孽人生经典语录