Chcę uzyskać kolor miejsca lub piksela, gdzie dotknę obrazu w systemie Android. Szukałem dużo w sieci, ale nic nie dostałem. Proszę, pomóż mi.jak uzyskać kolor na miejscu (lub pikselu) obrazu na zdarzeniu dotykowym w Androidzie
11
A
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;
}
});
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 –
dzięki, to działało –
Pamiętaj, że wizerunek można skalować. Rozwiązanie: http://stackoverflow.com/questions/12496339/android-imageview-get-pixel-color-from-scaled-image – BornToCode
http://android-er.blogspot.in/2012/10/get-touched- pixel-color-of-scaled.html – Mahalakshmi