¿Cómo puedo mostrar los controles en una posición fija durante varias resoluciones de pantalla en Android?
-
20-09-2019 - |
Pregunta
¿Cómo se muestran los controles en una posición fija durante varias resoluciones de pantalla en Android?
Tengo un diseño de pantalla, como a continuación
<?xml version="1.0" encoding="utf-8"?>
<TableLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:gravity="center_horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/img_background_loadbackground">
<TableRow>
<TextView
android:id="@+id/tv1"
android:layout_width="fill_parent"
android:layout_height="300sp"/>
</TableRow>
<TableRow>
</TableRow>
<ProgressBar
android:id="@+id/progressbar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</TableLayout>
Se está trabajando en HVGA (320x480) de resolución, el progressbar aparece en la parte inferior de la pantalla, pero si me quedo en otra resolución (WQVGA432 - 240x432) ProgressBar aparece en el centro de la pantalla. No soy capaz de mostrarlo en una posición fija.
Estoy utilizando el programa de archivo de manifiesto a continuación, pero no hay salida
<supports-screens android:smallScreens="true"
android:normalScreens="true"
android:largeScreens="true"
android:anyDensity="true" />
No tengo una solución para que por favor, dame una idea para resolver el problema.
Solución
Si desea que sus diseños para trabajar en diferentes pantallas de resolución debe su GRANuLOMETRÍA usando dip
como la unidad. Por ejemplo:
android:layout_marginRight="10dip"
dip
significa Dispositivo Pixel Independiente y el uso de estos en su diseño significa que Android automáticamente la escala de su diseño en función de la pantalla El dispositivo se ejecuta la aplicación tiene.
Se puede leer sobre esto en el Ofrecer múltiples pantallas página en el Android documentación de desarrolladores. Este documento también tiene algunas otras opciones para gestionar las diferentes pantallas, pero creo que el uso de dip
es probablemente el más fácil.
Otros consejos
depende de cómo se haya definido su diseño: publicar su diseño XML ayudará aquí
.Me supongo que si está en el medio que tiene algo como:
android:layout_gravity="center"
Pero sí, publicar tu XML sería un poco de ayuda!