Android diseño de diseño – Cómo obtener la altura de la pantalla en xml (layouts)

Tengo que diseñar la pantalla. Quiero poner la barra de pie de página debajo de la lista. Mira aquí:

<?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/main" xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="fill_parent" android:background="@drawable/wallpaper"> <!-- Header --> <LinearLayout android:id="@+id/header" android:background="#0099CC" android:layout_height="wrap_content" android:layout_width="fill_parent"> <TextView android:id="@+id/routeCode" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Code" android:width="100dip" android:height="30dip" android:textColor="@color/black" android:gravity="center_horizontal" /> <TextView android:id="@+id/routeName" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Name" android:width="150dip" android:height="30dip" android:textColor="@color/black" android:gravity="center_horizontal" /> <TextView android:id="@+id/outlets" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Outlets" android:width="60dip" android:height="30dip" android:textColor="@color/black" android:gravity="center_horizontal" /> </LinearLayout> <!-- List Divider --> <View android:layout_width="fill_parent" android:layout_height="1dip" android:background="?android:attr/listDivider" /> <!-- ListView (grid_items) --> <LinearLayout android:id="@+id/layout" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" > <ListView android:id="@android:id/list" android:layout_height="405dp" android:layout_width="fill_parent"> </ListView> <TextView android:id="@id/android:empty" android:layout_width="fill_parent" android:gravity="center_vertical" android:layout_height="fill_parent" android:layout_marginTop="25dp" android:text="No Sales Routes Define By Admin" /> </LinearLayout> <!-- Footer --> <RelativeLayout android:id="@+id/header" android:background="#000000" android:layout_height="wrap_content" android:layout_width="fill_parent"> <Button android:text="Exit" android:id="@+id/button1" android:background="#0099FF" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="8dp" android:onClick="onExitAction"> </Button> <Button android:layout_width="wrap_content" android:text="Next" android:background="#0099FF" android:layout_height="wrap_content" android:layout_marginRight="8dp" android:id="@+id/button2" android:layout_alignParentTop="true" android:layout_alignParentRight="true" android:onClick="onNextAction"> </Button> </RelativeLayout> </LinearLayout> 

El problema es si no hay datos para la lista o pocas filas son avilable, entonces footerbar subirá up.How para arreglar esa cosa. Quiero fijar en parte inferior. No voy a venir ….

Cuando agrego este código android:layout_weight="1" viene así: Introduzca aquí la descripción de la imagen

Esta es mi parte de la pestaña xml;

  <?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent" android:fadingEdge="horizontal"> <RelativeLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="fill_parent" android:textColor="#ffffff" /> <TabWidget android:id="@android:id/tabs" android:layout_width="fill_parent" android:layout_height="56dp" android:gravity="bottom" android:tabStripEnabled="true" android:layout_alignParentBottom="true"/> </RelativeLayout> </TabHost> 

Quiero esa barra por encima de la pestaña ..

Por favor, ayúdame..

gracias por adelantado

Pruebe este código,

 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout android:id="@+id/main" xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="fill_parent" android:background="@drawable/icon"> <!-- Header --> <LinearLayout android:id="@+id/header" android:background="#0099CC" android:layout_height="wrap_content" android:layout_width="fill_parent"> <TextView android:id="@+id/routeCode" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Code" android:width="100dip" android:height="30dip" android:gravity="center_horizontal" /> <TextView android:id="@+id/routeName" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Name" android:width="150dip" android:height="30dip" android:gravity="center_horizontal" /> <TextView android:id="@+id/outlets" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Outlets" android:width="60dip" android:height="30dip" android:gravity="center_horizontal" /> </LinearLayout> <!-- List Divider --> <View android:id="@+id/myView" android:layout_width="fill_parent" android:layout_height="1dip" android:background="?android:attr/listDivider" android:layout_below="@+id/header" /> <!-- ListView (grid_items) --> <LinearLayout android:id="@+id/layout" android:layout_below="@+id/myView" android:layout_width="wrap_content" android:layout_height="wrap_content" > <ListView android:id="@android:id/list" android:layout_height="wrap_content" android:layout_width="fill_parent"> </ListView> <TextView android:id="@id/android:empty" android:layout_width="fill_parent" android:gravity="center_vertical" android:layout_height="fill_parent" android:layout_marginTop="25dp" android:text="No Sales Routes Define By Admin" /> </LinearLayout> <!-- Footer --> <RelativeLayout android:layout_alignParentBottom="true" android:id="@+id/MyRelative" android:background="#000000" android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_gravity="bottom"> <Button android:text="Exit" android:id="@+id/button1" android:background="#0099FF" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="8dp" android:onClick="onExitAction"> </Button> <Button android:layout_width="wrap_content" android:text="Next" android:background="#0099FF" android:layout_height="wrap_content" android:layout_marginRight="8dp" android:id="@+id/button2" android:layout_alignParentTop="true" android:layout_alignParentRight="true" android:onClick="onNextAction"> </Button> </RelativeLayout> </RelativeLayout> 

Debe utilizar pesos para el LinearLayout con el ListView dentro:

 <LinearLayout android:id="@+id/layout" android:layout_width="wrap_content" android:layout_height="0dip" android:layout_weight="1" > 

EDIT : Utilice la siguiente disposición para las "pestañas":

 <?xml version="1.0" encoding="utf-8"?> <TabHost xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:id="@android:id/tabhost" android:layout_width="fill_parent" android:layout_height="fill_parent" android:fadingEdge="horizontal"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <FrameLayout android:id="@android:id/tabcontent" android:layout_width="fill_parent" android:layout_height="0dip" android:layout_weight="1" android:textColor="#ffffff"/> <TabWidget android:id="@android:id/tabs" android:layout_width="fill_parent" android:layout_height="56dp" android:gravity="bottom" android:tabStripEnabled="true"/> </LinearLayout> </TabHost> 

Esto debería funcionar

 <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:id="@+id/main" xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_height="fill_parent" android:layout_width="fill_parent" android:background="#ff0000"> <!-- Header --> <LinearLayout android:id="@+id/header" android:background="#0099CC" android:layout_height="wrap_content" android:layout_width="fill_parent"> <TextView android:id="@+id/routeCode" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Code" android:width="100dip" android:height="30dip" android:textColor="#000000" android:gravity="center_horizontal" /> <TextView android:id="@+id/routeName" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Name" android:width="150dip" android:height="30dip" android:textColor="#000000" android:gravity="center_horizontal" /> <TextView android:id="@+id/outlets" android:layout_height="fill_parent" android:layout_width="wrap_content" android:text="Outlets" android:width="60dip" android:height="30dip" android:textColor="#000000" android:gravity="center_horizontal" /> </LinearLayout> <!-- List Divider --> <View android:layout_width="fill_parent" android:layout_height="1dip" android:background="?android:attr/listDivider" /> <!-- ListView (grid_items) --> <LinearLayout android:id="@+id/layout" android:layout_width="wrap_content" android:layout_height="0dip" android:layout_weight="1.0" > <ListView android:id="@android:id/list" android:layout_height="fill_parent" android:layout_width="fill_parent"> </ListView> <TextView android:id="@id/android:empty" android:layout_width="fill_parent" android:gravity="center_vertical" android:layout_height="fill_parent" android:layout_marginTop="25dp" android:text="No Sales Routes Define By Admin" /> </LinearLayout> <!-- Footer --> <RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal"> <Button android:text="Exit" android:id="@+id/button1" android:background="#0099FF" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="8dp" android:onClick="onExitAction"/> <Button android:layout_width="wrap_content" android:text="Next" android:background="#0099FF" android:layout_height="wrap_content" android:layout_marginRight="8dp" android:id="@+id/button2" android:layout_alignParentRight="true" android:onClick="onNextAction"/> </RelativeLayout> </LinearLayout> 

Estaría tentado a hacer su contenedor maestro en un RelativeLayout y luego establecer android:layout_alignParentBottom="true" en su contenedor de pie de página

  • Cómo cambiar el color del hipervínculo textview?
  • Android Studio no puede procesar FloatingActionButton
  • Técnicas de implementación de la pantalla de bloqueo personalizado
  • Integración de archivos de vídeo en la aplicación Android como fondo de la aplicación
  • Progreso indeterminado en la actividad de Android
  • Cómo abrir la navegación en lugar de mapview en android?
  • ¿Cómo alinear linearlayout al centro vertical?
  • Diseño en blanco - eglSurfaceAttrib no implementado
  • Cómo inflar varias instancias de un diseño con el mismo id dentro de un diseño inflado
  • Android conjunto editar estilo de texto globalmente en el tema no funciona
  • Android: setContentView y LayoutInflater
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.