android color 颜色工具软件,Android颜色转换工具类ColorUtil

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;

……

}

……

}

相关资源:聪聪识字(趣味儿童识字软件)V1.2.1.0中文官方安装版-其它代码类…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年4月23日
下一篇 2021年4月23日

相关推荐