Tecnologia de desarrollo en dispositivos moviles

Page 233

CC-BY-SA • PID_00178750

39

Desarrollo de aplicaciones basadas en Android

Para definir este tipo de acciones, Android tiene una herramienta que ayuda a construirlos, el Gestoure Builder, así como un event para escuchar cuándo se producen dichas acciones por el usuario. La herramienta está como un programa de ejemplo de cada SDK (está en / samples/android-XX/GestoureBuilder/). Su función es la de registrar los gestoures y las traducciones que queréis que tengan estos gestos. Los gestos se van guardando en un directorio concreto de vuestro emulador para que podáis utilizarlos a posteriori. Para utilizar los gestos creados, debéis colocarlos en vuestro proyecto, accesible desde vuestros recursos para ser referenciado desde el código. Para que vuestro código sea capaz de escuchar estos gestos, debéis comunicárselo a vuestra activity añadiendo una zona con una capa del tipo GestoureOverlayView, que será donde escucharéis este tipo de gestos. En el mismo código debéis añadir un listener, el cual estará escuchando sobre la capa antes definida y sobre el tipo de gestos que hemos construidos con el Gestoure Builder. Ejemplo de preparación de los gestos En este trozo de código podéis ver las partes más interesantes de la preparación de los gestos. public class ListenGestouresActivity extends Activity implements OnGesturePerformedListener { private GestureLibrary mLibrary; ... public void onCreate(Bundle savedInstanceState) { ... mLibrary = GestureLibraries.fromRawResource(this, R.raw.numbers);

}

}

if (!mLibrary.load()) { finish(); } GestureOverlayView gestures =(GestureOverlayView) findViewById(R.id.gestures); gestures.addOnGesturePerformedListener(this); ...

Y su uso para predecir qué gesto se ha de realizar implementando el event gestourePerformed. Como podéis ver, os da una lista de posibles events, que llama predicciones. Esto os permite elegir en función de la precisión que queráis tener. public void onGesturePerformed(GestureOverlayView overlay, Gesture gesture) { ArrayList<Prediction> predictions = mLibrary.recognize(gesture); ... Prediction p = predictions.get(i); String text = "got " + p.name + " with a precision of " + p.score; ... }

Ejemplo de definición de gestos usando el Gestoure Builder


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.