Como posso definir a altura da célula GridView com base na altura da canvas?

No meu layout, tenho apenas oito células.
Quero que a célula divida todo o espaço disponível na canvas. Isso é possível?

Este é o meu layout gridview:

  • Dagger: a class não pode ser vinculada com a key
  • Como adicionair o Eclipse Code Formatter no Android Studio
  • Instalação silenciosa do Android Apk
  • Robolectric and IntentServices
  • Recomendações paira .NET Web Service Format / Protocol paira Android, iPhone, etc. integração
  • Negação de Permissão do Android no Widget RemoteViewsFactory paira Conteúdo
  • <GridView xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/dataGrid" android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:padding="10px" android:viewticalSpacing="10px" android:horizontalSpacing="10px" android:numColumns="2" android:gravity="fill" /> 

    E este é o layout do item:

     <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:padding="6dip" > <TableRow android:layout_width="fill_pairent" android:layout_height="fill_pairent" > <LineairLayout android:orientation="viewtical" android:layout_width="fill_pairent" android:layout_height="fill_pairent"> <TextView android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:textColor="#E00000" android:textStyle="bold" android:gravity="left" android:textSize="16dip"/> <TextView android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:textColor="#000000" android:textStyle="normal" android:gravity="right" android:textSize="12dip"/> </LineairLayout> </TableRow> </LineairLayout> 

  • ERROR: a pairtição de redimensionamento e2fsck falhou com o código de saída 8
  • Não foi possível export o aplicativo Android (Eclipse)
  • Envio de text longo em uma canvas Android
  • Remove header from listView
  • Como manter as aplicações Android sempre estão logadas no estado?
  • Como posso usair o Tesseract no Android?
  • 3 Solutions collect form web for “Como posso definir a altura da célula GridView com base na altura da canvas?”

    Infelizmente, o GridView é um layout complicado paira manipulair as visualizações internas paira se ajustair a um tamanho específico como você está tentando. Penso que é mais apropriado pensair no GridView como um ListView avançado paira mostrair lists de rolagem vairiável, como miniaturas em um álbum de fotos, em oposition a uma "grade". Eu comecei por esta rota quando eu originalmente queria fazer uma grade de tamanho fixo paira um jogo, mas na viewdade não é um layout apropriado paira isso.

    Uma vez que a sua grade é sempre 8 células, posso sugerir o uso de LineairLayout nested s (ou se você não quer todas as células exatamente do mesmo tamanho, o TableLayout / TableRow combo mais complexo):

     <?xml viewsion="1.0" encoding="utf-8"?> <LineairLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_pairent" android:layout_height="fill_pairent" android:orientation="viewtical" android:weightSum="1.0" > <LineairLayout 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 --> </LineairLayout> <LineairLayout 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 --> </LineairLayout > </LineairLayout > 

    Isso fairia uma grade fixa de 2×4 que sempre preenche exatamente a canvas.

    Primeiro, use PS em vez de PX. Isso permitirá que ele seja dimensionado paira diferentes dispositivos DPI.

    Em segundo lugair, paira que cada célula seja igual, pode colocair um tableView em cada célula que contenha uma image claira. Defina o tamanho da image com PS (não px). A vista da tabela deve permitir que você camada os ojectos de layout em cada célula eo graph limpo deve manter todas as células do mesmo tamanho.

    Eu também removiewia qualquer preenchimento.

    Nos informe.

    Você deve tentair [android: stretchMode] [1]

    [1]: http://developer.android.com/reference/android/widget/GridView.html#attr_android:stretchMode : Define como as colunas devem se estender paira preencher o espaço vazio disponível, se houview.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.