2017-11-23 7 views
0

Ich möchte ein 3x3-Raster mit GridLayout v7 erstellen. In meinem Code ändert sich die Zelle von TextView automatisch entsprechend ihrem Inhalt. Darüber hinaus beeinflussen sie die Größe anderer Zellen, obwohl sie in zwei verschiedenen Reihen sitzen.Wie vermeidet man die Größenanpassung von TextView in GridLayout v7?

Hier ist ein Beispielcode mit 2x2 Gitter. Das TextView befindet sich auf dem oberen Bildschirmrand und erstreckt sich über 2 Spalten. Jeder Knopf sollte die Hälfte des verfügbaren Bildschirms einnehmen (1 Spalte). Wie kann ich die Größe von TextView und anderen Komponenten korrigieren? Vielen Dank!

Natürlich kann ich eine verschachtelte LinearLayout versuchen, aber das ist keine empfohlene Praxis.

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:grid="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    grid:columnCount="2" 
    grid:rowCount="2"> 

    <TextView 
     android:text="How to make this box stop growing while adding some text to it?" 
     grid:layout_columnWeight="1" 
     grid:layout_rowWeight="1" 
     grid:layout_columnSpan="2" 
     grid:layout_rowSpan="1"/> 

    <Button 
     android:text="some button" 
     grid:layout_columnWeight="1" 
     grid:layout_rowWeight="1" 
     grid:layout_columnSpan="1" 
     grid:layout_rowSpan="1"/> 

    <Button 
     android:text="some button" 
     grid:layout_columnWeight="1" 
     grid:layout_rowWeight="1" 
     grid:layout_columnSpan="1" 
     grid:layout_rowSpan="1"/> 

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

Antwort

0

Ich denke, Sie sollten layout_height und layout_width setzen. Wie unten.

android unterstützen einige Optionen "match_parent" oder "wrap_content".

https://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html

+0

Nein, Ihre Lösung behebt nicht mein Problem :(und ich denke, es ist überhaupt nicht sinnvoll Was ich versuche zu tun ist. Raum um Prozent verteilt, so dass match_parent alles auf das GridLayout ausdehnt oder mir etwas fehlt? –

0

Test folgt aus:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:grid="http://schemas.android.com/apk/res-auto" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    grid:columnCount="2" 
    android:orientation="horizontal"> 

    <TextView 
     android:text="How to make this box stop growing while adding some text to it?" 
     grid:layout_columnSpan="2" 
     grid:layout_gravity="fill"/> 

    <Button 
     android:text="some button"/> 

    <Button 
     android:text="some button"/> 

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

Nein, es funktioniert nicht –

Verwandte Themen