2013-02-17 14 views

Odpowiedz

30

spróbuj tego:

final Bitmap bitmap = ((BitmapDrawable)imageView.getDrawable()).getBitmap(); 
imageView.setOnTouchListener(new OnTouchListener(){ 
     @Override 
     public boolean onTouch(View v, MotionEvent event){ 
     int x = (int)event.getX(); 
     int y = (int)event.getY(); 
     int pixel = bitmap.getPixel(x,y); 

     //then do what you want with the pixel data, e.g 
     int redValue = Color.red(pixel); 
     int blueValue = Color.blue(pixel); 
     int greenValue = Color.green(pixel);   
     return false; 
     } 
    }); 
+0

dzięki, to działało –

+3

Pamiętaj, że wizerunek można skalować. Rozwiązanie: http://stackoverflow.com/questions/12496339/android-imageview-get-pixel-color-from-scaled-image – BornToCode

+0

http://android-er.blogspot.in/2012/10/get-touched- pixel-color-of-scaled.html – Mahalakshmi

3

Można obliczyć obraz współrzędne piksela, który został kliknięty i odczytać piksel z danych obrazu, jak

Bitmap.getPixel(xcord,ycord) 
+0

Potrzebuję uzyskać piksel, gdy skalowałem mój obraz. Próbowałem każdego rozwiązania, ale otrzymałem w zamian tylko biały kolor –