Android Color颜色过度计算实现代码

 更新时间:2017年06月06日 08:35:14   投稿:lqh  
这篇文章主要介绍了Android Color颜色过度计算实现代码的相关资料,需要的朋友可以参考下

Android Color颜色过度计算实现代码

在看自定义TypeEvaluator来计算属性动画的属性值时,用到了对颜色的过度计算,翻看了好多博客,找到了比较有优秀的解决方案,在此记录,以备后用。

实现效果图:

实现代码:

/**
 * 根据fraction值来计算当前的颜色。
 */
private int getCurrentColor(float fraction, int startColor, int endColor) {
  int redCurrent;
  int blueCurrent;
  int greenCurrent;
  int alphaCurrent;

  int redStart = Color.red(startColor);
  int blueStart = Color.blue(startColor);
  int greenStart = Color.green(startColor);
  int alphaStart = Color.alpha(startColor);

  int redEnd = Color.red(endColor);
  int blueEnd = Color.blue(endColor);
  int greenEnd = Color.green(endColor);
  int alphaEnd = Color.alpha(endColor);

  int redDifference = redEnd - redStart;
  int blueDifference = blueEnd - blueStart;
  int greenDifference = greenEnd - greenStart;
  int alphaDifference = alphaEnd - alphaStart;

  redCurrent = (int) (redStart + fraction * redDifference);
  blueCurrent = (int) (blueStart + fraction * blueDifference);
  greenCurrent = (int) (greenStart + fraction * greenDifference);
  alphaCurrent = (int) (alphaStart + fraction * alphaDifference);

  return Color.argb(alphaCurrent, redCurrent, greenCurrent, blueCurrent);
}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • android通过usb读取U盘的方法

    android通过usb读取U盘的方法

    这篇文章主要为大家详细介绍了android通过usb读取U盘的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-07-07
  • Android如何通过手机自动获取短信验证码

    Android如何通过手机自动获取短信验证码

    注册帐号时,经常需要手机获取验证码,Android如何通过手机自动获取短信验证码,下面看看小编给大家分享的一段代码,感兴趣的小伙伴们可以参考一下
    2016-03-03
  • Android需要提升权限的操作方法

    Android需要提升权限的操作方法

    这篇文章主要介绍了Android需要提升权限的操作方法,需要的朋友可以参考下
    2014-02-02
  • native.js获取手机硬件基本信息实例代码android版

    native.js获取手机硬件基本信息实例代码android版

    本文为大家分享了native.js获取手机硬件基本信息实例代码android版包括手机MAC地址,手机内存大小,手机存储空间大小,手机CPU信息等手机硬件基本信息
    2018-09-09
  • Android富文本实现的几种方式汇总

    Android富文本实现的几种方式汇总

    由于项目中需要使用到富文本显示和编辑,索性整理下,这篇文章主要给大家介绍了关于Android富文本实现的几种方式,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • Android快速开发之定制BaseTemplate

    Android快速开发之定制BaseTemplate

    这篇文章主要为大家详细介绍了Android快速开发之定制BaseTemplate的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02
  • 如何利用Android仿微博正文链接交互效果

    如何利用Android仿微博正文链接交互效果

    最近在开发中遇到了各种坑,所以分享一下,希望能给大家贡献点经验,下面这篇文章主要给大家介绍了关于如何利用Android仿微博正文链接交互效果的相关资料,需要的朋友可以参考下
    2022-04-04
  • Android编程实现拍照功能的2种方法分析

    Android编程实现拍照功能的2种方法分析

    这篇文章主要介绍了Android编程实现拍照功能的2种方法,结合具体实例形式对比分析了Android通过调用系统摄像头及程序调用照相机功能两种实现技巧与相关注意事项,需要的朋友可以参考下
    2017-07-07
  • android scrollview 滑动到顶端或者指定位置的实现方法

    android scrollview 滑动到顶端或者指定位置的实现方法

    下面小编就为大家带来一篇android scrollview 滑动到顶端或者指定位置的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • Android AMS启动App进程原理分析

    Android AMS启动App进程原理分析

    这篇文章主要介绍了Android AMS启动App进程原理,系统fork函数是如何创建进程,文中有详细的代码示例,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-05-05

最新评论