He estado devanando los sesos (novato androide aquí, así que no es difícil de hacer) por un tiempo tratando de encontrar la manera de lograr esto:¿Cómo centrar los botones en la pantalla horizontal y verticalmente más equidistante aparte?
utilizando un RelativeLayout o algo distinto que es AbsoluteLayout con qué se creó esto Vengo de un fondo de programación de Windows donde el dispositivo ajusta el posicionamiento 'absoluto' para usted y el diseño de la GUI no era un problema.
El primer diseño funciona muy bien en el emulador, pero no formatea para mi Nexus One o cualquier otra pantalla que difiera del tamaño del emulador. Esperé esto porque está absolutamente posicionado, pero no he encontrado una solución que formatee correctamente para diferentes tamaños de pantalla. Mi objetivo es que el diseño funcione para diferentes tamaños de pantalla y en vertical/horizontal.
Aquí está el código que estoy usando actualmente: [main.xml]
<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<Button
android:id="@+id/Button01"
android:layout_width="188px"
android:layout_height="100px"
android:text="A"
android:layout_y="50px" android:layout_x="65px" android:textSize="48sp"/>
<Button
android:id="@+id/Button02"
android:layout_width="188px"
android:layout_height="100px"
android:text="B"
android:layout_y="175px" android:layout_x="65px" android:textSize="48sp"/>
<Button
android:id="@+id/Button03"
android:layout_width="188px"
android:layout_height="100px"
android:text="C"
android:layout_y="300px" android:layout_x="65px" android:textSize="48sp"/>
</AbsoluteLayout>
Uso de curiosidades de otras preguntas aquí, se me ocurrió esto, está más cerca, pero aún no ha llegado.
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
android:gravity="center"
android:id="@+id/widget49"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<Button
android:id="@+id/Button01"
android:layout_width="0dip"
android:layout_weight="1"
android:text="A"
android:textSize="48sp"/>
<Button
android:id="@+id/Button02"
android:layout_width="0dip"
android:layout_weight="1"
android:text="B"
android:textSize="48sp"/>
<Button
android:id="@+id/Button03"
android:layout_width="0dip"
android:layout_weight="1"
android:text="C"
android:textSize="48sp"/>
</TableLayout>
Aquí hay una foto de la TableLayout:
Cualquier ayuda/orientación sería muy apreciada.
Además, no use px (píxeles), use dip (visualice píxeles independientes). –
Gracias por publicar su respuesta completa, la copié y pegué en mi código y funciona muy bien. –