Documente Academic
Documente Profesional
Documente Cultură
2. Abre el fichero res/Layout/main.xml y trata de crear una vista similar a la que ves a
continuacin. Ha de estar formada por un LinearLayout que contiene un TexView y
cuatro Button. Trata de utilizar recursos para introducir los cinco textos que aparecen.
Solucin:
1. El fichero main.xml ha de ser similar al siguiente:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:padding="30dip"
tools:context=".Asteroides" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/tituloAplicacion"
android:gravity="center"
android:textSize="25sp "
android:layout_marginBottom="20dip"/>
<Button android:id="@+id/Button01"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Arrancar"/>
<Button android:id="@+id/Button02"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Configurar"/>
<Button android:id="@+id/Button03"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Acercade"/>
<Button android:id="@+id/Button04"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Salir"/>
</LinearLayout>
2. El fichero res/values/strings.xml ha de tener el siguiente contenido:
<resources>
<string name="Arrancar">Jugar</string>
<string name="Configurar">Configurar</string>
<string name="Acercade">Acerca de </string>
<string name="Salir">Salir</string>
<string name="tituloAplicacion">Asteroides</string>
<string name="hello">Hello World, Asteroides! </string>
<string name="app_name">Asteroides</string>
</resources>
Recursos alternativos
Una aplicacin Android va a poder ser ejecutada en una gran variedad de dispositivos. El
tamao de pantalla, la resolucin o el tipo de entradas puede variar mucho de un
dispositivo a otro. Por otra parte, nuestra aplicacin ha de estar preparada para diferentes
modos de funcionamiento, como el modo automvil o el modo noche, y para poder
ejecutarse en diferentes idiomas.
A la hora de crear el interfaz de usuario hemos de tener en cuenta todas estas
circunstancias. Afortunadamente la plataforma Android nos proporciona una herramienta
de gran potencia para resolver este problema, el uso de los recursos alternativos.
Para resolver este problema Android te permite disear una vista diferente para la
configuracin horizontal y otra para vertical.
3. Crea la carpeta res/layout-land.
4. Copia en ella el fichero main.xml.Para ello selecciona el fichero y pulsa Ctrl-C.
Selecciona la carpeta destino y pulsa Ctrl-V.
5. Crea una vista similar a la que ves a continuacin: formada por un LinearLayout
que contiene un TexView y un TableLayout con dos Button por columna.
Solucin:
Has de obtener un cdigo XML similar al siguiente:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/andr
oid"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:padding="30dip"
tools:context="Asteroides" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/tituloAplicacion"
android:gravity="center"
android:textSize="25sp"
android:layout_marginBottom="20dip"/>
<TableLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center"
android:stretchColumns="*">
<TableRow>
<Button android:id="@+id/Button01"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Arrancar"/>
<Button android:id="@+id/Button02"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Configurar"/>
</TableRow>
<TableRow>
<Button android:id="@+id/Button03"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Acercade"/>
<Button android:id="@+id/Button04"
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:text="@string/Salir"/>
</TableRow>
</TableLayout>
</LinearLayout>
NOTA: Para conseguir en un TableLayout, que las columnas se ajusten a todo el ancho de la tabla poner
stretchColumns="*". stretchColumns="0"significa que asigne el ancho sobrante a la primera columna.
Android utiliza una lista de sufijos para expresar recursos alternativos. Estos sufijos
pueden hacer referencia a la orientacin del dispositivo, al lenguaje, la regin, la densidad
de pxeles, la resolucin, el mtodo de entrada,
Por ejemplo, si queremos traducir nuestra aplicacin al ingls, espaol y francs. Siendo el
primer idioma el usado por defecto, crearamos tres versiones del fichero strings.xml y lo
guardaramos en los siguientes tres directorios:
res/values/strings.xml
res/values-es/strings.xml
res/values-fr/strings.xml
TEST
Qu sufijo para recursos alternativos utilizaras para hacer un Layout especfico para tabletas?
port
land
normal
xlarge
xhdpi
Deseas crear un recurso que dependa de que ocurran varias condiciones. Por ejemplo en (idioma
ingls) y rUS (regin EEUU) Cmo determinaras el orden de los sufijos (en-rUS o rUS-en)?