Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/07/2011, 19:10
Avatar de zero_master
zero_master
 
Fecha de Ingreso: junio-2011
Ubicación: Leon, Gto
Mensajes: 290
Antigüedad: 12 años, 10 meses
Puntos: 74
Veamos las coordenadas!!!

Bueno gente, hoy creo que me ando luciendo escribiendo ya 2 temas en el mismo día, esta vez vamos a ver como sacar las coordenadas de nuestra pantalla de la aplicación ademas de indicar si estamos haciendo presión, moviéndonos o sin presión.

Para esta parte nos sera muy útil las siguientes librerías:
Cita:
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
Vamos a declarar en nuestro main.xml los textview que vamos a utilizar.

1.- Nuestro clasico textview de "Hello word" o pueden cambiarla la verdad
2.- El texto donde va a ir la acción que se esta realizando.
3.- La posición o coordenada en X
4.- La posición o coordenada en Y

Creo que no es necesario que les diga como agregar los textview en el main.xml por que nadie a comentado nada al respecto.

Bueno ya tenemos listo nuestro Graphical Layout ahora solo falta agrega el código en nuestro .java

Aunque uno pensaría "no jodas te apuesto que es un buen de código" para sorpresa no es tanto comparado a otros .

Primero declaramos nuestros textview que vamos a modificar o mejor dicho vamos a agregarle mas texto por cada vez que se modifique algo en el layout.

Cita:
TextView textEvent, textX, textY;
Los llenamos con sus respectivos id para modificarlos.

Cita:
LinearLayout MainLayout = (LinearLayout)findViewById(R.id.mainlayout);
textEvent = (TextView)findViewById(R.id.event);
textX = (TextView)findViewById(R.id.x);
textY = (TextView)findViewById(R.id.y);
Y lo que hace toda la magia de este asunto es la siguiente instrucción:

Cita:
private View.OnTouchListener OnTouchListener
= new View.OnTouchListener(){

@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
// TODO Auto-generated method stub

textX.setText("x: " + String.valueOf(motionEvent.getX()));
textY.setText("y: " + String.valueOf(motionEvent.getY()));

int action = motionEvent.getAction();

switch (action){
case MotionEvent.ACTION_DOWN:
textEvent.setText("ACTION_DOWN");
break;
case MotionEvent.ACTION_MOVE:
textEvent.setText("ACTION_MOVE");
break;
case MotionEvent.ACTION_UP:
textEvent.setText("ACTION_UP");
break;
case MotionEvent.ACTION_CANCEL:
textEvent.setText("ACTION_CANCEL");
break;
default:
textEvent.setText("Desconocida!");
}

return true;
}

};