Android: GridView largeur pas d'habillage pour le contenu?
J'essaie d'afficher un GridView dans une boîte de Dialogue. Malgré tous mes efforts, le contrôle GridView largeur de pousse à la totalité de l'écran, au lieu de d'habillage pour les colonnes. La mise en page et une image qui représente l'émission ci-dessous (j'ai mis une couleur de fond pour le contrôle GridView pour illustrer la question).
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/colorgridview"
android:background="#FF00CCBB"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:numColumns="4"
android:verticalSpacing="5dp"
android:horizontalSpacing="5dp"
android:columnWidth="70dp"
android:stretchMode="none"
/>
Fixe layout_width ne fonctionne pas non plus. @ab11 - avez-vous été en mesure de terminer le contrôle GridView? Je suis en train de l'envelopper dans une boîte de dialogue. Pas de chance jusqu'à présent.
Avez-vous essayé ExpandableGridview dans ce sujet : stackoverflow.com/questions/8481844/gridview-height-gets-cut
Avez-vous essayé ExpandableGridview dans ce sujet : stackoverflow.com/questions/8481844/gridview-height-gets-cut
OriginalL'auteur ab11 | 2011-04-13
Vous devez vous connecter pour publier un commentaire.
Je sais que ce post est un peu dépassé. Mais si quelqu'un a besoin d'une solution à cela, cette réponse peut venir dans maniable.
Il est possible de régler le point de vue de la largeur d'après l'écran de mesure.
Pour ce faire:
Laissez votre classe en œuvre les OnGlobalLayoutListener.
L'écran est mesurée lorsque le onGlobalLayout méthode est appelée. Nous pouvons faire de notre magie.
GridView.getLayoutParams().largeur = ....
edit:
Je n'ai pas été très clair sur la façon d'ajouter la onGlobalLayoutListener. Voir plugmind post, il montre comment l'ajouter.
Ne peux pas comprendre comment le faire affichage/format largeur/hauteur
Salutations,
Bram
J'ai fait le même coup à ma demande, je suis donc persuadé que cela fonctionne. Merci pour l'accepter 🙂
OriginalL'auteur Bram
Je pense que vous devriez utiliser
android:layout_width="fill_parent"
au lieu deandroid:layout_width="wrap_content"
car wrap contenu utiliser le minimum de place. D'autre part, fill_parent utiliser tout l'espace nécessaire. Plus de plus vous devriez vous débarrasser de"android:columnWidth="70dp".
Oh mon erreur désolé, je n'ai pas le comprendre. Avez-vous essayé de construire un Dialogue personnalisé avec android:layout_width="wrap_content" ? Je ne suis pas sûr, mais il pourrait être la boîte de Dialogue taille de remplir l'écran.
Comme indiqué dans ce lien, je suis sûr que les Dialogues seulement "wrap_content": stackoverflow.com/questions/2961833/...
OriginalL'auteur ClemM
Il est bien sûr possible de définir un fixe layout_width (dp). Étant donné que le nombre de colonnes est également fixe, cela pourrait être une solution pour vous?
OriginalL'auteur Matthew Willis
Eu le même problème...
Je l'ai résolu avec substituée onMeasure()
OriginalL'auteur Vitaliy Polchuk