Ir al contenido principal

[Android] Mi primera aplicación para Android (II)


Ahora vamos a explicar que son todos estos directorios y ficheros que hay por defecto en nuestro proyecto.


Dentro de la carpeta "res" es donde están todos los recursos.
drawable-xxxx es donde estarán todos las imágenes de nuestro proyecto.
Según sea el tamaño y densidad, ahí es donde tienen que estar.

  • xhdpi - Extra High density ( 960dp x 720dp )
  • hdpi - High density ( 640dp x 480dp )
  • mdpi - Medium density ( 470dp x 320dp )
  • ldpi - Low density ( 426dp x 320dp )
Para más información de estos directorios, os recomiendo que sigas el siguiente enlace http://developer.android.com/guide/practices/screens_support.html

La carpeta "Layout" es donde estará nuestro formulario, la UI, la parte visible de nuestra aplicación.
La carpeta "Values" es donde estarán las variables y valores globales de nuestra aplicación, por ejemplo, versión del producto, nombre de la aplicación, etc..
También tendremos un directorio llamado "Raw" que es donde estarán alojados los ficheros de sonido en mp3. En nuestro ejemplo, es importante porque es donde estarán los sonidos que vamos a usar en nuestra aplicación. Por defecto no se crea este directorio, por lo que hay que crearlo a mano.

Luego tenemos el fichero R.java, este fichero está bajo el paquete "Gen"


Como has observado, este fichero se auto-genera cuando modificamos, o añadimos cualquier cosa en la carpeta "Res" (de ahí, el nombre de R.java, vamos, se han estrujado mucho el cerebro los diseñadores, jejeje).
Si haces cualquier cambio en este fichero, es ignorado pues cuando se compila o se modifica algo en este directorio, se elimina automáticamente pues se genera nuevamente el fichero R.Java.

Y la próxima entrada... el final, que sera cuando generemos la aplicación, la compilemos, la probemos y la instalemos en nuestro Android.

Comentarios

Entradas populares de este blog

[PB] - Convertir Numero en Letra

¿Alguna vez has necesitado crear un proceso que tenga que traducir números a letras? Por ejemplo, para un proceso de emisión de cheques. Pues esta es la rutina que necesitas En este caso, vamos a desarrollar un traductor en dos idiomas, es castellano y en catalán. Para ello vamos a usar la función GlobalReplace que viene con las PFC's, pero si no las usas, no importa porque la he extraído para este ejemplo. 1- Creamos un objeto de usuario no visual autoinstanciable, por ejemplo lo llamamos ncst_num2txt 2- Definimos las siguientes variables de instancia private String is_cifra[],is_centenas[] 3- Creamos las funciones de of_GloblalReplace y otra para sobrecargar por defecto la opción de IgnoreCase (Esto lo puedes encontrar en la PFCs) public function string of_GlobalReplace (string as_Source, string as_Old, string as_New, boolean ab_IgnoreCase); ////////////////////////////////////////////////////////////////////////////// // // Function:   of_GlobalRe...

[PB] Crear barra de botones de forma dinámica

Hola de nuevo... hoy, Power Builder, esta vez en PB 10.5 La idea de tener una barra de botones de forma dinámica me hizo idear el siguiente código. Podemos crear un objeto de forma dinámica directamente en nuestra window usando el comando OpenUserOject. this.OpenUserObject(uo_boton) Esta instrucción en la ventana, pondrá un objeto de usuario llamado uo_boton en la ventana, luego podemos invocar las propiedades para poner el botón en el sitio que queremos (X=23, Y=24, etc..) Pero el problema era que lo que tenia era un objeto de usuario y quería poner esos botones dentro del objeto de usuario... grave problema. La solución la dio nuestro amigo Microsoft, porque nos facilita las cosas usando los manejadores de los objetos. Function ulong SetParent (ulong hWndChild, ulong hWndNewParent) Library "USER32.DLL" Esta API cambia el manejador padre de un objeto dado, es decir, si tengo el Handle del objeto de usuario y el Handle del boton, puedo deci...