2012-05-25 9 views
8

Estoy trabajando en un juego para Android (Sky Hiking - Google Play, Github). Quiero agregar una opción de "ayuda" para el juego en el que revisará los componentes del juego uno por uno, los señalará con una flecha y tendrá un cuadro de texto que dirá para qué se utilizan. Estoy buscando consejos sobre cuál es la mejor manera de lograr esto. ¿Debo mostrar una imagen enorme (parcialmente transparente) sobre la actividad del juego que contiene la flecha (necesitaré una imagen para cada flecha para cada componente del juego).Mostrar una superposición de "ayuda" sobre un diseño de Android

Editar: También hay un problema de hacer esto para diferentes tamaños de pantalla.

¿Cuál es la mejor práctica en este caso?

Respuesta

6

Esto es lo que haría en tal caso. Puede que no sea la mejor solución, pero debería funcionar, independientemente del tamaño de la pantalla:

Haga lo siguiente en un bucle, una vez para cada elemento:

  1. Obtener la posición actual del elemento en la pantalla.
  2. Dibuje su flecha en una posición que esté justo al lado de su elemento. Puede obtener esta posición obteniendo las coordenadas X e Y del elemento y agregando una cierta cantidad de espacio. Por ejemplo, si el elemento está en 10, 10, dibuja la flecha en 25, 25. Puedes tomar en cuenta el ancho del elemento mientras decides dónde dibujar la flecha. También debe verificar si el lado izquierdo o derecho tiene más espacio disponible y dibujar de ese lado. Además, puede dibujar la flecha en un lado y el texto en otro si el elemento está cerca del centro.
  3. Después de que haya dibujado la flecha, puede mostrar su cuadro de texto con el contenido de la ayuda en otra parte de la pantalla. Puede almacenar el contenido de la ayuda en el XML y mostrar la cadena apropiada para este elemento.
  4. Quite la flecha y el cuadro de texto en preparación para el siguiente elemento.
+0

pueden surgir problemas si el elemento que necesita explicación está en el lado derecho de la pantalla, por lo que debe verificar cuánto espacio queda en el lado derecho cada vez que desea colocar la flecha y el texto de ayuda – banzai86

+0

@ banzai86 Good catch . He editado el punto 2 para reflejar esto. –

0

Yo sugiero echar un vistazo a PopupWindow. Puede mostrar una vista arbitraria (su puntero y cuadro de texto) y puede anclarse a la vista que elija (la que está explicando).

Cuestiones relacionadas