poner - menu overflow android studio
oyente para presionar y soltar un botón (3)
La respuesta dada por el share es correcta para las vistas genéricas.
Para un Button
, debe devolver false
desde el controlador táctil siempre :
button.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
// PRESSED
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_CANCEL:
// RELEASED
break;
}
return false;
}
});
Si devuelve true
, eludirá el procesamiento táctil normal del botón. Lo que significa que perderá los efectos visuales de presionar el botón hacia abajo y la ondulación táctil. Además, Button#isPressed()
devolverá false
mientras se presiona el botón.
El procesamiento táctil normal del botón le asegurará que obtendrá los eventos de seguimiento incluso cuando devuelve false
.
¿Cómo puedo escuchar cuando se presiona y suelta un Button
?
Puedes usar un onTouchListener
:
view.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()) {
case MotionEvent.ACTION_DOWN:
// PRESSED
return true; // if you want to handle the touch event
case MotionEvent.ACTION_UP:
// RELEASED
return true; // if you want to handle the touch event
}
return false;
}
});
onTouchListener
es lo que estás buscando.
Deberá usar el MotionEvent
correcto.
Esto le permitirá manejar los diferentes tipos de "toques".