sábado, 19 de mayo de 2012

Programar en android mouse Press

En esta ocasión hablaremos de que los diferentes métodos que existen al hora de hacer un toque en la pantalla táctil y en caso de que este se suelte o se siga presionando.


Primer método:

"void mousePressed() "

Este método se utiliza cuando  en la pantalla del móvil detecta un toque sin soltar, esto quiere decir que se mantiene el toque de la plumilla o el dedo y este método se pone que se realizara mientras el usuario aga esto.


Segundo método:
"void mouseReleased()"

Este método se utiliza posteriormente del mousePressed, es cuando el usuario deja de tocar la pantalla del dispositivo y que ocurrirá cuando esto suceda.

Tercer método:
"mouseDragged()"

Esto se usa para crear o modificar nuevos datos con respecto a la posición donde se encuentre presionado ya sea una plumilla o el dedo.

También existen una manera en que el movil detecte diferentes tipos de toques de manera simultanea llamado multitoch. Para que esto funcione es necesario declarar cuantos eventos suporta el dispositivo:



int masTouchEvents = 5;

Postreriormente se puede declarar un arreglo para los diferentes toques o datos al hora de tocar el dispositivo en diferentes partes.

MultiTouch[] mt;

Este metodo se utilizara para detectar los diferentes toques que se dio a la pantalla.
public boolean surfaceTouchEvent (MotionEvent me)

Aqui un link con un ejemplo pas detallado sobre esto:

Link: http://www.akeric.com/blog/?p=1435


Ejemplo de toque con algo de envió de información:



void mousePressed()
{
/////////////////////////motor hacia adelante///////////////////////
/// aqui tiene una condicion si se toco en ese rango mandara un dato
if(mouseX > 70 && mouseX < 170 && mouseY > 250 && mouseY < 300)
{
int algox = 1;
try
{
ons.write(1);
//outputStream.write(0);
//mandar.write(0);
//ons.flush();
}
catch(Exception ex)
{
estado = 4;
error = ex.toString();
println(error);
}
}
/////////////////////////hacia atras//////////////////////////
// al igual que el de arriba si se toco en esta cordenada se mandara un dato
if(mouseX > 70 && mouseX < 170 && mouseY > 40 && mouseY < 100)
{
try
{
ons.write(0);
}
catch(Exception ex)
{
estado = 4;
error = ex.toString();
println(error);
}
}
}
// este metodo es cuando se suelta el lugar tocado y manda un dato la soltarlo
void mouseReleased()
{
try
{
ons.write(2);
}catch(Exception ex)
{
error = ex.toString();
println(error);
}
}
view raw gistfile1.ino hosted with ❤ by GitHub

1 comentario: