Habe ich eine einfache ListView
Auflistung der Ergebnisse in android. Klicken Sie auf jedes Element, ich möchte, dass es nach unten schieben, erweitern Sie und zeigen Sie den Inhalt. Gibt es einen einfachen Weg, dies zu tun in android?
Jede Hilfe wird geschätzt.
InformationsquelleAutor Priyank | 2010-04-24
Hier ist ein Beispiel aus Udinic. Es hatte listview-Element erweitern mit der animation und erfordern API-Ebene nur 4+
Im Grunde benötigen Sie eine animation Klasse
Und verwenden Sie diese :
ExpandAnimationExample
Hinweis: dieses Beispiel ist noch buggy. github.com/Udinic/SmallExamples/issues/6 Als Sie durch die Liste scrollen, Ansicht von oben und unten, das ein - /ausblenden Staat Durcheinander.
Lösungen für das Durcheinander Staaten? Offenbar gibt es ein problem, wenn wir scrollup, so dass die Sicht shouls nach unten schieben, jetzt haben wir die Sichtbarkeit, so dass die anim. Tritte, aber es ist ein flackern, die Ansicht schließt und dann wieder öffnet, um nach unten schieben 🙁
Wie kann ich es kaum gefunden, die open-source-Bibliotheken, die implementiert expandable ListView richtig. Ich entscheiden, meine eigene über LinearLayout + ScrollView + benutzerdefinierte Ansicht, ohne das mit ListView. Es funktioniert für mich, da ich nur ~10 Elemente. Ich glaube, neue
RecyclerView
, eine bessere versionListView
erzielen denselben Effekt leichter. Aber, ich habe nicht versucht, das herauszufinden.InformationsquelleAutor Nam Trung
schauen Sie sich dieses Antwort. mehr als, dass du den tweed-animation. überprüfen Sie die ApiDemos/Animation2 Beispiele. und siehe auch den anim Ordner in ApiDemos. es hilft mir sehr viel. nach Ihrer Frage slide_top_to_bottom helfen.
InformationsquelleAutor Praveen
Der einfachste Weg ist die Verwendung einer ObjectAnimator
Dies wird sich ändern, maxLines von Ihrem TextView zu 40, über 200 Millisekunden.
Hüten Sie sich vor der Verwendung yourTextView.getLineCount (), um zu bestimmen, wie viele Zeilen zu erweitern, weil es nicht geben eine genaue Zahl erst nach einer layout-pass. Ich empfehle Ihnen, einfach codieren Sie einen maxLines Wert, der mehr als Sie erwarten, dass der text würde schon werden. Man könnte auch schätzen, ist es mit yourTextView.Länge (), dividiert durch die niedrigste Anzahl von Zeichen, die Sie jemals erwarten, dass pro Zeile.
InformationsquelleAutor Amagi82