Android颜色转换工具类ColorUtil
发布时间:2020-12-15 03:20:49 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 private void refreshTopbar() { if(mOnTurnListener != null) { Topbar topbar = mOnTurnListener.onScroll(); if(getScrollY() = 300) { topbar.set
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 private void refreshTopbar() { if(mOnTurnListener != null) { Topbar topbar = mOnTurnListener.onScroll(); if(getScrollY() >= 300) { topbar.setAlpha(1.0f); } else if(getScrollY() >= 180 && getScrollY() < 300) { topbar.setAlpha((getScrollY() - 180) / 120f); } else { topbar.setAlpha(0.0f); } } } 现在关键就是setAlpha这个方法了,其实也简单,就是利用toAlpha转换成颜色就行。因此我写了一个工具类 ColorUtil.java 来对颜色进行一些操作:
package com.codefrom.utils; import java.util.regex.Pattern; import android.graphics.Color; import com.codefrom.common.MApplication; public class ColorUtil { /** * 获取资源中的颜色 * @param color * @return */ public static int getResourcesColor(int color) { int ret = 0x00ffffff; try { ret = MApplication.gainContext().getResources().getColor(color); } catch (Exception e) { } return ret; } /** * 将十六进制 颜色代码 转换为 int * * @return */ public static int HextoColor(String color) { // #ff00CCFF String reg = "#[a-f0-9A-F]{8}"; if (!Pattern.matches(reg,color)) { color = "#00ffffff"; } return Color.parseColor(color); } /** * 修改颜色透明度 * @param color * @param alpha * @return */ public static int changeAlpha(int color,int alpha) { int red = Color.red(color); int green = Color.green(color); int blue = Color.blue(color); return Color.argb(alpha,red,green,blue); } } public void setAlpha(float toAlpha) { //setBackgroundColor(ColorUtil.changeAlpha(ColorUtil.HextoColor("#ff0066ff"),(int)(toAlpha * 0xff))); setBackgroundColor(ColorUtil.changeAlpha(ColorUtil.getResourcesColor(R.color.topbar_bg),(int)(toAlpha * 0xff))); } public class MApplication extends Application { /**对外提供整个应用生命周期的Context**/ private static Context instance; …… /** * 对外提供Application Context * @return */ public static Context gainContext() { return instance; } public void onCreate() { super.onCreate(); instance = this; …… } …… } 原文地址: Android颜色转换工具类ColorUtil 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |