¿Cómo funciona la api addSharedElement que se agregó a FragmentTransaction?

Api 21 ha añadido un api llamado addSharedElement que parece que se supone que se utiliza similar a las vistas compartidas con las transiciones de actividad, consulte: http://developer.android.com/reference/android/app/FragmentTransaction.html#addSharedElement ( android .view.View , java.lang.String))

addSharedElement usar este api estableciendo android:transitionName en una vista en ambos fragmentos y luego llamando addSharedElement en FragmentTransaction . En el fragmento, he llamado setSharedElementEnterTransition(new ChangeImageTransform()); .

Sin embargo, esto no tiene efecto.

Estoy ejecutando esto en la vista previa de Lollipop que fue lanzado a principios de este mes.

El api addSharedElement (view, name) coincidirá con la vista View en el fragmento de salida (puede tener cualquier nombre de transición no nulo) con una vista en el Fragmento entrante con el nombre transitionName. Esto le permite tener diferentes nombres de transición del Fragmento que deja y el Fragmento entrante.

Este es un caso de uso común cuando tiene varias vistas que pueden ser elementos compartidos en un fragmento. Por ejemplo, una lista de imágenes en su dispositivo. Al hacer clic en uno, se sustituye el fragmento por uno nuevo que tiene una vista detallada o una sola imagen. La lista dará a cada imagen un nombre de transición exclusivo para el elemento. Éste podría ser el ID de fila o el URI de contenido, por ejemplo. En la vista de una sola imagen, el nombre de transición podría ser constante. Digamos que es "imagen grande". Usted podría emparejarlos fácilmente:

 fragmentTransaction.addSharedElement(imageIcon, "largeImage"); 

Intente establecer la transición de elemento compartido con un TransitionSet que consta de ChangeImageTransform y ChangeBounds.

  • Android - ListFragment dentro DialogFragment (AlertDialog): Fragmento no tiene una vista
  • Incluyendo list_content en el diseño de lista para conservar la funcionalidad ListFragment
  • ¿Es OK para addToBackStack y reemplazar en una transacción de fragmento?
  • ¿Cómo puedo habilitar las pestañas de la barra de acciones en un fragmento?
  • Manejo de barras de acción con dos fragmentos
  • Método de findPreference () no obsoleto? - Android
  • La actividad con fragmentos no cambia de tamaño cuando se abre el teclado
  • Cambio de orientación con viewPager dentro de FragmentActivity
  • PopBackStack () después de saveInstanceState ()
  • ¿Cómo puedo obtener Fragment from View?
  • Comunicación básica entre dos fragmentos
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.