android android-5.0-lollipop mvp android-transitions

android - Transiciones de elementos compartidos entre vistas(no actividades o fragmentos)



android-5.0-lollipop mvp (1)

Sí, las transiciones lo permiten.

En su ejemplo, ya tiene la cuadrícula y las vistas de detalle en su jerarquía. Para usar las transiciones, funcionará mejor si la vista de detalles no se inicia en la jerarquía de Vistas. Necesitas intercambiar las dos vistas.

Hay dos formas (similares) de hacerlo. Lo primero es tener la vista de cuadrícula en una escena. Luego use TransitionManager.go (detailScene, transición).

La segunda forma es usar TransitionManager.beginDelayedTransition y luego intercambiar el diseño detallado por el diseño de cuadrícula.

Es importante que las vistas compartidas tengan algo en común. Normalmente es una ID de vista o nombre de transición. Esta vinculación le dirá al sistema de transición que, aunque las vistas sean instancias diferentes.

La transición que querrás usar es @android: transition / move. Combina ChangBounds, ChangeTransform, ChangeImageTransform y ChangeClipBounds. Tendrás que apuntar a esto en las vistas de elementos compartidos. Parece que necesitará otra transición (¿Desvanecimiento?) Para las vistas de entrada y / o salida.

Algo como esto:

TransitionSet shared = ... shared.addTarget("sharedName"); gridElement.setTransitionName("sharedName"); Fade fade = new Fade(); fade.excludeTarget("sharedName", true); TransitionSet set = new TransitionSet(); set.addTransition(shared) .addTransition(fade); TransitionManager.go(detailScene, set);

Digamos que estoy usando un enfoque basado en vistas para desarrollar una aplicación de Android como la que se describe en el siguiente artículo: http://corner.squareup.com/2014/10/advocating-against-android-fragments.html

Así que ahora tengo dos vistas de pantalla completa. Una es visible y contiene una cuadrícula de imágenes. El otro está oculto y es una vista de detalle de la imagen a hacer clic. Sin hacer transiciones al hacer clic en una imagen de la cuadrícula, la vista de la cuadrícula se ocultará y se mostrará la vista detallada. Ahora, ¿qué pasa si quiero tener algo parecido a una transición de elemento compartido entre la imagen pequeña en la vista de cuadrícula y la imagen más grande en la vista de detalle? ¿Es algo como esto posible?