¿Cómo puedo configurar la altura de la celda GridView en función de la altura de la pantalla?
En mi diseño tengo sólo ocho celdas.
Quiero que la celda divida todo el espacio disponible en la pantalla. es posible?
Este es mi diseño gridview:
- TextViews en la parte superior e inferior, el espacio restante lleno de ListView
- los archivos xml de layout-land no funcionan con onConfigurationChanged call back
- Android mover la disposición hasta cuando el teclado suave se muestra con viewpagers
- FILL_PARENT y MATCH_PARENT
- Alineación derecha de la disposición de Android
<GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dataGrid" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="10px" android:verticalSpacing="10px" android:horizontalSpacing="10px" android:numColumns="2" android:gravity="fill" />
Y este es el diseño del elemento:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:padding="6dip" > <TableRow android:layout_width="fill_parent" android:layout_height="fill_parent" > <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:textColor="#E00000" android:textStyle="bold" android:gravity="left" android:textSize="16dip"/> <TextView android:layout_width="fill_parent" android:layout_height="fill_parent" android:textColor="#000000" android:textStyle="normal" android:gravity="right" android:textSize="12dip"/> </LinearLayout> </TableRow> </LinearLayout>
- TextView y Ellipsize cuando es apretado por otro TextView
- Android: ¿Cómo incluir dinámicamente una disposición XML?
- Posibilidad de hacer esquinas redondeadas en la progresión Progressbar personalizada ¿Dibujable?
- Android: cómo ocultar y luego mostrar Ver con efecto de animación?
- Tableta Android en Emulator no está recogiendo el diseño correcto
- Android - Dos botones en la misma línea que llenan todo el ancho
- Android ImageButton - no se puede obtener la imagen en el centro
- Diapositiva de la imagen de Android viewPager de derecha a izquierda
Desafortunadamente, GridView
es un diseño complicado de manipular para obtener vistas internas para adaptarse a un tamaño específico como usted está intentando. Creo que es más apropiado pensar en GridView
como un ListView
avanzado para mostrar listas de desplazamiento variable, como las miniaturas en un álbum de fotos, en oposición a una "cuadrícula". Comencé por esta ruta cuando originalmente quería hacer una cuadrícula de tamaño fijo para un juego, pero realmente no es un diseño adecuado para que en absoluto.
Dado que su cuadrícula es siempre de 8 celdas, podría sugerir el uso de LinearLayout
s anidado (o si no desea que todas las celdas TableLayout
exactamente el mismo tamaño, el más complejo TableLayout
/ TableRow
combo) en su lugar:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:weightSum="1.0" > <LinearLayout android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="0.5" android:orientation="horizontal" android:weightSum="1.0" > <!-- Drop in 4 items here with layout_weight of 0.25 --> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="0dp" android:layout_weight="0.5" android:orientation="horizontal" android:weightSum="1.0" > <!-- Drop in 4 items here with layout weight of 0.25 --> </LinearLayout > </LinearLayout >
Esto haría una cuadrícula fija 2×4 que siempre llena exactamente la pantalla.
En primer lugar, utilice PS en lugar de PX. Esto permitirá que pueda escalar a diferentes dispositivos DPI.
En segundo lugar, para conseguir que cada celda sea de tamaño uniforme, podría colocar un tableView en cada celda que contenga una imagen clara. Establecer el tamaño de la imagen con PS (no px). La vista de tabla debe permitir que la capa de los ojetos de diseño en cada celda y el gráfico claro debe mantener todas las celdas del mismo tamaño.
También quitaría cualquier relleno.
Haznos saber.
Usted debe intentar [android: stretchMode] [1]
[1]: http://developer.android.com/reference/android/widget/GridView.html#attr_android:stretchMode : Define cómo se deben estirar las columnas para llenar el espacio vacío disponible, si lo hay.
- Cómo iniciar la aplicación Vuforia AR sample android?
- Generar proyecto de Android en línea de comandos en OSX: Tarea 'assemblDebug' no se encuentra en el proyecto raíz