Quero que uma ação aconteça quando clico em uma região X da tela. Tipo, queria saber se dá para detectar um clique sobre uma BitMap. Se não, como poderia fazer ara meu app detectar um clique num ponto específico. Vi vários tutoriais, mas não tô entendendo direito e nem tô tendo êxito. Ficaria grato se alguém pudesse me explicar melhor!
Caso queira (x,y) do toque na tela de override do ontouchevent na sua activity:
@Override
public boolean onTouchEvent(MotionEvent event) {
int x = (int)event.getX();
int y = (int)event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
case MotionEvent.ACTION_UP:
}
return false;
}
Caso queira (x,y) do toque em uma view adicione o listener:
@Override
public boolean onTouch(View v, MotionEvent event) {
int x = (int) event.getX();
int y = (int) event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_MOVE:
case MotionEvent.ACTION_UP:
}
return false;
}
No caso da bitmap, vamos imaginar que você esta exibindo-a em um imageView. Primeiramente vai precisar saber a área (pontas do retângulo que a forma) que esta View ocupa (não lembro como faz, mas uma pesquisa ja deve bastar), depois pegar as coordenadas (x,y) e verificar se esta nessa área.
Espero que o codigo ajude