所选图像的显示图像?

时间:2014-05-28 12:15:32

标签: android image bitmap

我在显示的imageview中选择了一些图像区域。然后我对该位图的选定像素进行一些工作,该像素显示在imageview中。但我无法击中用户选择的那些像素。我知道我必须对显示的图像和实际的位图进行像素映射。请参阅图片以更好地了解我的问题。

用户使用循环选择器选择一些像素

处理后,受影响的像素与用户选择的像素不同

enter image description here

我尝试过这样的东西来获得准确的像素

Bitmap image = EyeColorChangerActivity.getImageBitmap();

     int displayedwidht = image.getWidth();
     int displayedheight = image.getHeight();

     x = x*((float)displayedwidht/mScreenWidth);
     y = y*((float)displayedheight/mScreenHeight);

1 个答案:

答案 0 :(得分:0)

在ImageView上设置OnTouchListener。

OnTouchListener的onTouch方法内部使用以下代码来获取所选的位图像素。

@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
int x = (int) arg1.getX();
int y = (int)arg1.getY();
int pixel = mBitmap.getPixel(x, y);
// process new color for selected pixel.
    ....
//set new color to bitmap pixel

return false;
}