Wie kann ich erzwingen, eine GridView zu verwenden, den ganzen Bildschirm (unabhängig von der display-Größe)?
Habe ich das folgende layout-Datei, die eine GridView
und ein ImageView
dahinter als hintergrund.
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#FFFFFF">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|right"
android:layout_marginRight="-70dp"
android:layout_marginBottom="-50dp"
android:src="@drawable/s_background"/>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gridview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:columnWidth="90dp"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:stretchMode="columnWidth"
android:gravity="center"/>
</LinearLayout>
</FrameLayout>
- Und das ist das layout verwende ich für die eigentliche Sache in jeder "Zelle" des Gitters :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/cardInGrid"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:singleLine="true"
android:textSize="40sp"
android:textColor="#660099"
android:typeface="serif"/>
</LinearLayout>
Sehe ich Folgendes auf meinem Gerät im moment :
Gibt es eine Möglichkeit der Herstellung jedes Element in der GridView größer, so dass es passt die Größe des Bildschirms und ich habe nicht un-verwendete Leerzeichen am unteren Rand des Displays?
Dies funktioniert gut auf einem emulator, sondern auf ein Gerät, dessen Bildschirmauflösung höher ist, daher immer die weiße Raum auf der Unterseite.
Vielen Dank
- Interessanterweise, wenn ich den
android:minSdkVersion
nichts, wie 6/7/8 ich den obigen Verhalten. Der moment, den ich entfernen Sie es vollständig das gridview füllt sich mehr Platz auf dem Bildschirm. Irgendwelche Ideen? - Esley haben u habe keine Lösung für die Gridview? ich habe Gesicht gleiche Problem ...
- U kann mir helfen zu diesem Thema........
- natürlich ja
- kann ich zwingen mein grid-layout bedecken Sie den ganzen Bildschirm.....bitte helfen Sie mir?
- hintergrund Bild in Artikel
- Hintergrundbild für die gesamte gridview
- kein Element
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht automatisch.
Insbesondere Ihre Zellen text. Android ist nicht genau in der Lage zu erraten, wie groß der text sein sollte, um Ihre Ziele erfüllen, vor allem, wenn Sie nehmen Zeilenumbruch berücksichtigt.
Den Punkt
GridView
ist "un-verwendete Leerzeichen am unteren Rand des display", wenn Sie nicht über genug Daten, um den Bildschirm zu füllen, so dass es flexibel handhaben mehrerer Bildschirmgrößen und ist auch für das scrollen, wenn es mehr Daten. Wenn Sie wollen etwas ähnliches wie das dashboard Muster, erwägen Sie die VerwendungDashboardLayout
oder etwas entlang jenen Linien.Diese gut funktionieren. Vergessen Sie nicht über den vertikalen Abstand.
GridView
in deinem adapter: dasparent
parameter enthält es bereits.Haben Sie versucht
android:layout_weight="1"
?Oder
Hoffe, das hilft?