ActivityOptions.makeSceneTransitionAnimation似乎不存在

Moh*_*dAG 6 android android-5.0-lollipop

Android L引入了一个新的动画功能:在不同活动中的类似视图之间进行动画制作.它在这里记录.

我试图使用ActivityOptions.makeSceneTransitionAnimation,但它似乎在SDK(或在jar中)中看不到,所以我尝试使用反射,它返回一个空值.

有没有其他人得到它的工作?

Moh*_*dAG 10

好的,我搞定了.

似乎现在完全忽略了设置styles.xml中的值.

您需要在每个Activity的onCreate中执行此操作,直到修复为止

getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
Transition transition = // load transition here.
getWindow().setSharedElementEnterTransition(transition);
getWindow().setSharedElementExitTransition(transition);
Run Code Online (Sandbox Code Playgroud)

根据ViewAnimationUtils所遇到的相同错误,你会在Android Studio中看到错误,但它会编译并运行正常.


小智 5

我们可以使用v21的主题配置.将这些项放入res/values-v21/styles.xml

 <item name="android:windowContentTransitions">true</item>
 <item name="android:windowAllowEnterTransitionOverlap">true</item>
 <item name="android:windowAllowReturnTransitionOverlap">true</item>
Run Code Online (Sandbox Code Playgroud)

  • 第三个是:`<item name ="android:windowAllowReturnTransitionOverlap"> true </ item>` (4认同)