Android 低版本实现Tint--着色功能

Tint

这是个啥玩意?翻译过来 == 着色,安卓5.x以上就支持着色功能了,那具体有啥用了?看完这篇文章你就懂了。想了解更多Tint知识,可发挥强大的搜索引擎功能
PS:这里我们就实现一个低版上也可以用的着色控件—-TintEditText
需求:在焦点改变时改变EditText的DrawableLeft图片颜色
疑问:有人就说了,这很简单,添加监听判断是否有焦点然后设置不同状态的图片或是直接写个selector
上面的疑问确实可以很好的实现我们的需求,但这里我们只是重点说怎么在低版本上也能兼容Tint着色功能

图片的准备

图片素材准备一张纯白色的图片就行,无需准备两张不同状态的图片。
PS:就说这点,我们是不是有必要去研究了了?因为这样可以大大减少我们工程中用到的图片数量,至少不同状态的图片现在只需要一张了。
据说透明的图片也可以实现着色,我目前还没实现

TintEditText.java

//**
 * 这里我们要导入v7兼容包
 * 这里继承至AppCompatEditText是为了我们的Custom EditText可以拥有5.x以上主题效果
 * Created by JaySeng on 2015/9/4.
 *//
public class TintEditText extends AppCompatEditText implements View.OnFocusChangeListener {
   
    private Drawable drawableLeft;
    private Drawable wrappedDrawable;
    private Drawable drawableTop;
    private Drawable
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值