Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/213.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android位图着色,getPixel错误_Android_Colors_Bitmap_Pixel_Getpixel - Fatal编程技术网

Android位图着色,getPixel错误

Android位图着色,getPixel错误,android,colors,bitmap,pixel,getpixel,Android,Colors,Bitmap,Pixel,Getpixel,所以,我想做的是,如果我点击按钮,它会给同一屏幕上的图像加上橙色(70%) 这是我的橙色方法 public Bitmap toOrange(Bitmap bmpOriginal) { int width, height; height = bmpOriginal.getHeight(); width = bmpOriginal.getWidth(); int orangeFilter = new Color().rgb(255, 165, 0); int

所以,我想做的是,如果我点击按钮,它会给同一屏幕上的图像加上橙色(70%)

这是我的橙色方法

public Bitmap toOrange(Bitmap bmpOriginal) {
    int width, height;
    height = bmpOriginal.getHeight();
    width = bmpOriginal.getWidth();
    int orangeFilter = new Color().rgb(255, 165, 0);
    int maroonFilter = new Color().rgb(115, 24, 44);
    for (int j = 0; j < height - 1; j++) {
        for (int i = 0; i < width - 1; i++) {

我尝试在这个loob之外使用bmpOriginal.setPixel(5,5,Color.Red),它也出现了一个错误。所以我知道setPixel不工作。如何解决此问题?

由于您没有公布错误的具体内容,我假设位图是不可变的,这意味着您无法更改它。你可以试着做一个可变的拷贝,明白吗

一种更简单的方法是对
图像视图应用颜色过滤器,如下所示:

imageCapture.setColorFilter(Color.rgb(255, 165, 0));
        int newColor = (int) (bmpOriginal.getPixel(i, j) * 0.7 + orangeFilter
                * 0.3);
        bmpOriginal.setPixel(i, j, newColor);
            }

    }
    return bmpOriginal;
}
imageCapture.setColorFilter(Color.rgb(255, 165, 0));