Dynamische Änderung der Spaltennummer in Android Gridview?

7

Meine Anwendung zeigt das Bildsymbol in der Gitteransicht im Querformat an. Dafür verwende ich die XML-Datei als

%Vor%

Für die Hochformatausrichtung möchte ich nur zwei Bildsymbole in der Gridview-Spalte anzeigen.Wie geht das ?.

    
Ram 17.09.2013, 13:05
quelle

2 Antworten

18

Wenn Sie adaptive Ressourcen verwenden: Stellen Sie sicher, dass Sie im Ressourcenordner /res folgende Ordner haben: values-land und values-port . Fügen Sie in diesen beiden Ordnern eine Ressourcendatei hinzu, nennen wir sie integers.xml.

In /values-land/integers.xml haben Sie mindestens:

%Vor%

während für values-port / integers.xml :

%Vor%

Das Layout ändert sich zu:

%Vor%

Beachten Sie das Vorhandensein von @ integer / grid_rows

    
gunar 17.09.2013, 13:16
quelle
2

Ich hatte dieses Problem und die Antwort des Schützlings war sehr hilfreich, aber ich denke, ich kann noch einige Details hinzufügen. Wenn Sie in AndroidStudio die Verzeichnisansicht auf "Projekt" setzen (damit Sie Ihre neuen Verzeichnisse sehen können) und klicken Sie mit der rechten Maustaste auf "res", um ein neues Ressourcenverzeichnis zu erstellen. Erstellen Sie zwei neue Verzeichnisse, "values-port" und "values-land", jeweils als Typ value.

Fügen Sie dann in values-land ein ganzzahliges Element hinzu:

%Vor%

und in values-port, fügen Sie ein Ganzzahlelement hinzu:

%Vor%

Jetzt in Ihrem Gridview-Layout, anstatt Ihre numColumn hart zu codieren:

%Vor%

Das ist im Wesentlichen die Lösung eines Scharfschützen (danke Gunar!), aber es fügt einige Details hinzu, die ich auf dem Weg entdeckt habe. Zum Beispiel konnte ich die Res-Verzeichnisse nicht sehen, die ich machte, bis ich in die Projektansicht wechselte und es bereits einen Integer-Ressourcentyp gibt, so dass wir die Spalten nicht als Element deklarieren müssen und dann den Typ auf Integer setzen müssen. (Übrigens: Ich liebe das Android-XML-Tool!)

    
jwehrle 03.10.2015 19:27
quelle

Tags und Links