Ich habe eine grundlegende Gridview, die ich eingerichtet haben, wie folgt:Ninepatch Hintergrund schrumpft Anzeigebereich von Grid
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/MainMenuGridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
/>
Alles funktioniert gut, bis ich einen ninepatch Hintergrund hinzufügen. Sobald ich das Hintergrundbild wie folgt hinzufügen:
<?xml version="1.0" encoding="utf-8"?>
<GridView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/MainMenuGridview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:numColumns="auto_fit"
android:verticalSpacing="10dp"
android:horizontalSpacing="10dp"
android:columnWidth="90dp"
android:stretchMode="columnWidth"
android:gravity="center"
android:background="@drawable/mainbackground"
/>
Es bricht meine Gridview. Anstatt 3-4 Spalten anzuzeigen (abhängig von Bildschirmauflösung und -ausrichtung), werden alle Symbole in der Gridview in einer einzelnen Spalte in der oberen linken Ecke angezeigt. Außerdem werden immer nur zwei angezeigt und ich muss nach unten scrollen, um den Rest zu sehen. Ich vermute, dass die Gridview an die Dimensionen des Ninpatch-Center-Logos gebunden ist, aber ich bin mir nicht sicher.
Mein ninepatch hat einen kleinen Bereich in der Mitte mit einem Logo, das ich ohne Schräglage anzeigen möchte. Der Rest des Hintergrunds ist ein kleiner Farbverlauf, der den Rest des Bildschirms einnimmt. Irgendwelche Ideen, was das verursacht?
Das ist so seltsam - ich habe keine Polsterung! keine Zeilen auf der unteren oder rechten Seite, und wenn ich das Kontrollkästchen "Inhalt anzeigen" ankreuze, wird das gesamte Ninpatch in (auf der rechten Seite) eingefärbt, um anzuzeigen, dass das gesamte Bild Inhaltsbereich ist. – JoshC13
Ich habe es herausgefunden - die Polsterung wurde tatsächlich vom Neupatch verändert. Ich überprüfte, um sicherzustellen, und mein gesamter Bereich wurde als Inhaltsbereich definiert. Wenn es jedoch zu einer Dehnung kam, wurde automatisch Padding eingeführt. Ich musste nur die Eigenschaft "setPadding" verwenden und alles hat gut funktioniert! – JoshC13