2017-02-22 8 views
0

Ich habe eine GridLayout mit 3 Spalten und zufällige Anzahl von Kindern im Inneren, ich möchte, dass alle Kinder füllen eine und nur eine Spalte, nicht weniger und nicht mehr. Aber der Code unten macht die TextView s füllen mehr als das. Ich möchte jeder TextView1/3 des Raumes ausfüllen.GridLayout füllen nur eine Spalte verlassen andere Spalten leer

<android.support.v7.widget.GridLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    app:columnCount="3"> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     app:layout_columnWeight="1" 
     android:background="#abcdef" 
     app:viewAspectRatio="3"/> 

    <TextView 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     app:layout_columnWeight="1" 
     android:background="#fedcba" 
     app:viewAspectRatio="3" /> 

</android.support.v7.widget.GridLayout> 

Wenn es nicht möglich, mit GridLayout, würde ich gerne über andere Möglichkeiten kennen

Antwort

0

Ich bin nicht ganz sicher, aber versuchen, diese:

<android.support.v7.widget.GridLayout 
android:layout_width="match_parent" 
android:layout_height="wrap_content" 
app:columnCount="3"> 

<TextView 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    app:layout_columnWeight="1" 
    android:background="#abcdef"/> 

<TextView 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    app:layout_columnWeight="1" 
    android:background="#fedcba" /> 

</android.support.v7.widget.GridLayout> 

oder:

<android.support.v7.widget.GridLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    app:columnCount="3"> 

<TextView 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    app:layout_columnWeight="1" 
    android:background="#abcdef" 
    app:viewAspectRatio="1"/> 

<TextView 
    android:layout_width="0dp" 
    android:layout_height="wrap_content" 
    app:layout_columnWeight="1" 
    android:background="#fedcba" 
    app:viewAspectRatio="1" /> 

</android.support.v7.widget.GridLayout> 

Hoffe, es hilft

+0

'viewAspectRatio' ist keine Eigenschaft von' TextView' oder 'GridLayout'. Es ist ein benutzerdefinierter Attr, den ich gerade vergessen habe zu entfernen – Sourabh

+0

android: layout_columnSpan = "1" Versuchen Sie dies zu Ihren TextViews hinzuzufügen :) So wird es nur eine Spalte Ihrer Gridview nehmen – Kurapika

Verwandte Themen