Tint(着色器)的兼容实现
我们在做控件的时候可以使用tint这个属性给控件上色,这样在很多情况下能减少不同色彩的资源色彩。在MD设计中,控件颜色随着主体改变也是一大要点,今天我们就来看看如何使用它。
使用步骤:1.建立一个控件;2.使用ViewCompat.setBackgroundTintList
// 第一种实现 ColorStateList cl = new ColorStateList(new int[][]{new int[0]}, new int[]{0xffffcc00}); ViewCompat.setBackgroundTintList(pasteEt, cl); // 第二种实现 ViewCompat.setBackgroundTintList(pasteEt, getResources().getColorStateList(R.color.red));
这里的colorstateList是什么东西呢,如果做过属性定制的同学一定见过它,它就是一个color的xml文件,这里的color我用了最简单的定义方式:
<color name="red">#ff0000</color>
我们有时候还会像selector一样定义不同状态下的颜色,最终这些xml文件最终解析转为的东西就是colorStateList对象啦,这个对象保存了状态和不同状态下的演示值。
参考自:
http://segmentfault.com/a/1190000003038675?utm_source=Weibo&utm_medium=shareLink&utm_campaign=socialShare
http://stackoverflow.com/questions/27735890/lollipops-backgroundtint-has-no-effect-on-a-button
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· 展开说说关于C#中ORM框架的用法!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
2014-08-03 用开源项目FlipImageView实现图片的翻转效果
2014-08-03 用开源项目PhotoView实现图片的双指缩放和双击放大缩小
2014-08-03 TextView字体,行距,html格式,超链接,最大长度的设定
2014-08-03 Fragment与Activity之间的通信
2014-08-03 Fragment中生命周期函数的介绍