Ich bin unsicher, welche Art von Layout für dieses bestimmte Szenario verwendet werden soll.
Ich möchte grundsätzlich ein horizontales lineares Layout haben, dem ich Ansichten hinzufügen kann. In diesem Fall Schaltflächen (Anzeige von Tags in einer Anwendung) Aber jede Ansicht hat eine andere Breite basierend auf dem Namen des Tags, das angezeigt wird, also möchte ich sage 10 Tags hinzufügen, ich brauche ein Layout, das so viele wie es passt kann in der ersten Zeile und dann, wenn es nicht passt, automatisch in die nächste Zeile überlaufen.
Grundsätzlich, wie eine Textansicht mit Text funktioniert, wenn der Text länger als die Breite ist, geht es in die nächste Zeile, außer dass ich dies mit nicht anklickbaren Schaltflächen machen möchte.
Ich dachte an ein Rasterlayout, aber dann hätte es in jeder Zeile die gleiche Anzahl von "Tags", wenn Sie zwei Tags mit einem langen Namen in der ersten Zeile und sieben mit einem kurzen Namen in der zweiten Zeile hätten.
Etwas, das ungefähr so aussieht:
Ich möchte im Grunde genommen das Aussehen des Stack-Overflows hier unten sehen.
Antwort: Ihre eigene benutzerdefinierte Layout
:)
Ich weiß, dass dies eine späte Antwort auf diese Frage ist. Aber es könnte dem OP oder jemandem mit Sicherheit helfen.
Sie können ViewGroup
erweitern, um ein benutzerdefiniertes Layout wie das folgende zu erstellen. Der Vorteil besteht darin, dass Sie die Ansichtshierarchie flach halten .
%Vor%MyFlowLayout
%Vor%Verwendung in einer Datei layout.xml
Für den Show-Typ der Ansicht muss man sich für das Flow-Layout entscheiden: - Es gibt viele Bibliotheken auf Git Folgendes ist das Beispiel von, Blazsolar / FlowLayout
Fügen Sie diese Zeile in App.gradle
hinzu %Vor%Verwendung: -
%Vor%Für detaillierte Implementierung folgen Sie unten Link -
Sie können diese Links auch versuchen: - Ссылка (versuche das hier) Ссылка Ссылка
Tags und Links android android-layout android-linearlayout tags