Android 顏色值轉換

 /**
     * @color:  參數
     *          類型:int
     *          例如:-1272178
     *
     * @return 字符串
     * */
    public static String colorToRGBA(int color) {
        int alpha = color >>> 24;
        int r = ( color & 0xff0000 ) >> 16;
        int g = ( color & 0xff00 ) >> 8;
        int b = color & 0xff;

        return alpha + ", " + r + ", " + g + ", " + b;
    }

    /**
     * @red     紅色數值
     * @green   綠色數值
     * @blue    藍色色數值
     *
     * @return 字符串
     * */
    public static String rgbToHex(int red, int green, int blue){

        String hr = Integer.toHexString(red);
        String hg = Integer.toHexString(green);
        String hb = Integer.toHexString(blue);

        return  "#"+hr + hg + hb;
    }

    /**
     * @color: 參數
     *         類型:int
     *         例如:-1272178
     *
     * @return 字符串
     * */
    public static String colorToHex(int color) {

        String R, G, B;

        StringBuffer sb = new StringBuffer();

        R = Integer.toHexString(Color.red(color));
        G = Integer.toHexString(Color.green(color));
        B = Integer.toHexString(Color.blue(color));

        //判斷獲取到的R,G,B值的長度 如果長度等於1 給R,G,B值的前邊添0
        R = R.length() == 1 ? "0" + R : R;
        G = G.length() == 1 ? "0" + G : G;
        B = B.length() == 1 ? "0" + B : B;

        sb.append("#");
        sb.append(R);
        sb.append(G);
        sb.append(B);

        return sb.toString();
    }

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章