J'ai fait une mise en page pour ma listview dans un projet Android. C'est comme ça;Fonctionnement de GridLayout lors de la spécification des colonnes et des rowspan
J'ai lu et fait des recherches sur d'autres échantillons de GridLayout et je l'ai écrit xml en conformité avec j'ai.
<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/card_background"
android:columnCount="30"
android:orientation="horizontal"
android:rowCount="6"
android:id="@+id/grid_layout_notification">
<com.ei.dizitakip.android.CircledNetworkImageView
android:id="@+id/fancy_notification_thumbnail"
android:layout_columnSpan="5"
android:layout_rowSpan="6"
/>
<TextView
android:layout_columnSpan="25"
android:textAppearance="?android:attr/textAppearanceLarge"
android:id="@+id/fancy_title"
android:textColor="@color/color_primary_dark" />
<ImageView
android:layout_columnSpan="2"
android:id="@+id/fancy_season_icon"
android:src="@mipmap/season_icon"
android:background="@android:color/transparent"
/>
<TextView
android:layout_columnSpan="10"
android:id="@+id/fancy_status_text"
android:gravity="center_vertical" />
<ImageView
android:layout_columnSpan="2"
android:id="@+id/fancy_domain_icon"
android:src="@mipmap/www_icon"
android:background="@android:color/transparent"
/>
<TextView
android:layout_columnSpan="11"
android:id="@+id/fancy_domain_text"
android:gravity="center_vertical" />
</GridLayout>
Comme vous avez réalisé que le code est loin de la conception. Qu'est-ce qui me manque à propos de GridLayouts? C'est la première fois que je l'utilise et j'ai utilisé la même approche avec layout_weight de LinearLayout. Vraiment apprécié tous les échantillons de code, approche ou technique.
Spécifiez votre question. Considérez votre mise en page comme une table. Avec columnspan vous indiquez à la mise en page le nombre de colonnes que l'élément de vue doit prendre pour être affiché, avec rowspan vous définissez le nombre de lignes que la vue doit prendre dans votre table. – Sonic
En fait, je pense de la même manière. Mais, ça ne fonctionne pas de la même façon que je pense :) Je ne comprends pas, peut-être que les grilles n'ont pas la même taille. Pourriez-vous fournir un échantillon comme dans l'exemple ci-dessus? –
Que voulez-vous dire par "ça ne marche pas"? Fondamentalement, cela fonctionne. Afin d'obtenir le design comme il est dans votre image, vous devez spécifier des marges et des paddings, en particulier l'image de gauche devrait avoir "android: layout_gravity =" center "" – Sonic