Wie implementiert man Android 5, Lollipop, Activity Transitions mit Fragmenten?Android Google IO 2014: Wie Aktivitätsübergang mit Fragmenten zu implementieren?
Antwort
Die API ist Activity Transitions ziemlich ähnlich, wenn auch in gewisser Hinsicht aufgrund des Unterschieds zwischen dem Starten einer Aktivität und einer Fragmenttransaktion begrenzt.
Hier sind die Grundlagen:
- eine gemeinsame Zeichenfolge verwenden, wenn
android:transitionName
oderView.setTransitionName
auf die Ansichten definieren Sie zwischen den Fragmenten - Wenn ein Fragment Transaktion erstellen, rufen Sie zu teilen die Absicht:
FragmentTransaction.addSharedElement(View sharedElement, String name)
mit der Ansicht, die Sie beabsichtigen zu teilen (und seinen Übergangsnamen). - Geben Sie die
Transition
, die Sie auf dem Fragment zu laufen wollen über:Fragment.setSharedElementEnterTransition(Transition transition)
- Wenn Sie mehrere Übergänge ausgeführt werden soll, eine
TransitionSet
nutzen sie zu aggregieren.
Muss ich den Übergang im Aktivitätsthema aktivieren? Ich habe diese Lösung versucht, aber es scheint nicht zu funktionieren, könnte es daran liegen, eine Ansicht in einem verschachtelten Fragment zu animieren? –
Ich habe auch den Übergang im Aktivitäts-Theme aktiviert, aber die Animation ist nicht sichtbar. Haben Sie ein Arbeitsbeispiel zum Teilen? –
ich habe den Übergang zwischen fragmentA contaming list of item und FrammgementB ist details jetzt, wenn Liste hat einzelne Artikel mein Übergang funktioniert gut, aber haben mehrere Elemente in der Liste, es funktioniert nicht –
Sie nicht im Moment, zumindest in Bezug auf die offizielle Rahmenunterstützung. In der heutigen Google I | O-Präsentation "Material Science" haben Chet Haase und Adam Powell darauf hingewiesen, dass an der Erweiterung der neuen Aktivitätsübergänge zu Fragmenten gearbeitet wird. Im Grunde nahmen sie zuerst das härtere Problem (Aktivitäten) in Angriff. Die Erweiterung auf Fragmente wird von der L-Version ausgeführt, und sie konnten nicht sagen, ob etwas früher über einen Vorschaukanal verfügbar sein könnte. – CommonsWare
@CommonsWare, jetzt, Lollipop ist da draußen - irgendwelche Neuigkeiten zu diesem Feature? Ich kann nichts finden –
@ MichałK: Entschuldigung, ich habe nicht gesucht. – CommonsWare