programacion - transición de actividad android 5 en api inferior
manual de programacion android pdf (2)
Agregamos muchas cosas en Lollipop para que las Transiciones de actividad funcionen bien. Es posible realizar Transiciones de actividad manualmente (en versiones anteriores), pero en algunos casos encontrará problemas y es probable que la transición de retorno solo funcione en el caso más simple. Chet Haase tiene un devbyte here .
Las animaciones entre fragmentos fueron posibles antes, aunque la API no es tan fácil de usar como en las Transiciones de Fragmentos de Lollipop.
Pensamos mucho acerca de las transiciones de portado reverso a versiones anteriores en la biblioteca de soporte. Todavía puede suceder. Si es así, también deberíamos poder hacer algo para las Transiciones de Fragmentos.
Esta pregunta ya tiene una respuesta aquí:
Cada vez que busco me encontré con esta "transición de actividad android 5 (L) solo disponible en API >= 21
.
QuickPic
bien, pero puedo ver algunas aplicaciones como QuickPic
y la google inbox
que usan una transición similar y también funcionan en una API más baja, así que ¿cómo esta aplicación puede hacer tal cosa?
¿que he hecho?
1) mucha búsqueda :)
2) jugando con ActivityOptionsCompat
que solo se aplica a api> = 21, así:
ActivityOptionsCompat options = ActivityOptionsCompat.makeSceneTransitionAnimation(activity, transitionView, DATA.EXTRA_PASSED_JSON);
Intent intent = new Intent(activity, PhotoViewerActivity.class);
intent.putExtra(DATA.EXTRA_PASSED_JSON, json);
ActivityCompat.startActivity(activity, intent, options.toBundle());
EDIT (pregunta marcada como duplicada): es diferente de otra pregunta en este caso, porque dije que hay otra aplicación que hace esta transición en la API inferior y quiero saber cómo lo hacen.
Como dices tú mismo, la biblioteca de soporte no admite (todas) las transiciones en las versiones de Android inferiores a 5.0. Sin embargo, hay algunas alternativas:
Bibliotecas de compatibilidad no oficial
https://github.com/andkulikov/transitions-everywhere
https://github.com/takahirom/PreLollipopTransition
https://github.com/lgvalle/Material-Animations
Android KitKat
http://www.doubleencore.com/2013/11/new-transitions-framework/ y un ejemplo que se encuentra en su carpeta de ejemplos de SDK.