android修改color的alpha,给RGB加个A

写在开头,该文章修改alpha的方法不是通过view.setalpha()的形式。

有时候我们在修改alpha的时候,因为代码写法等情况,不能使用setalpha()方法修改,只能传入color来修改颜色的时候,可以使用该方法,亲测有效~

平时用到最多的color只包含了RGB三种颜色,如熟知的黑色:#000000

而加入了透明度(Alpha)的color就变成了ARGB,就是在原来的三色前面加了Alpha。

代码:

/**
  * 给color添加透明度
  * @param alpha 透明度 0f~1f
  * @param baseColor 基本颜色
  * @return
  */
public static int getColorWithAlpha(float alpha, int baseColor) {
   int a = Math.min(255, Math.max(0, (int) (alpha * 255))) << 24;
   int rgb = 0x00ffffff & baseColor;
   return a + rgb;
}

使用:

var float = 0.6f
var newColor = ColorUtils.getColorWithAlpha(float, Color.WHITE)
view.setBackgroundColor(color)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容