美文网首页Android
Android代码修改图标颜色

Android代码修改图标颜色

作者: 明日未期 | 来源:发表于2019-10-17 10:36 被阅读0次
import android.graphics.*;

public class ChangeColor
{
    
    public static Bitmap changeColor(Bitmap bitmap, String color)
    {
        if(bitmap == null || bitmap.isRecycled())
        {
        }
        Bitmap mBitmap = null;
        int mColor;
        try
        {
            mColor = Color.parseColor(color);

            //按照图标大小创建数组
            int mBitmapWitdh = bitmap.getWidth();
            int mBitmapHeight = bitmap.getHeight();
            int[] mPixels = new int[mBitmapWitdh * mBitmapHeight];
            //循环 bitmap 每个像素点 查看alpha值
            int count = 0;
            for(int i = 0; i < mBitmapHeight; i++)
            {
                for(int j = 0; j < mBitmapWitdh; j++)
                {
                    //获得bitmap每个像素点的color
                    int perColor = bitmap.getPixel(j, i);
                    int a = Color.alpha(perColor);
                    if(a!=0)
                    {
                        mPixels[count] = mColor;
                    }
                    else {
                        mPixels[count] = Color.parseColor("#00000000");
                    }
                    count++;
                }
            }

            mBitmap = Bitmap.createBitmap(mBitmapWitdh, mBitmapHeight, Bitmap.Config.ARGB_8888);
            mBitmap.setPixels(mPixels, 0, mBitmapWitdh, 0, 0, mBitmapWitdh, mBitmapHeight);
        }
        catch(Exception e){
            mBitmap = bitmap;
        }
        
        return mBitmap;
    }
}

相关文章

网友评论

    本文标题:Android代码修改图标颜色

    本文链接:https://www.haomeiwen.com/subject/wermmctx.html