所以我遵循了有关提供向上导航的文档
但是,如果我想自定义 xml 中的动画过渡效果,我正在尝试做这样的事情
https://gist.github.com/lawloretienne/b8b4f68a779b9f97241f
进入动画效果很好,退出动画似乎没有被触发。单击向上按钮时,它将向上导航到逻辑父活动。但是,不是显示退出动画,而是显示进入动画。
我在这里错过了什么吗?
所以我遵循了有关提供向上导航的文档
但是,如果我想自定义 xml 中的动画过渡效果,我正在尝试做这样的事情
https://gist.github.com/lawloretienne/b8b4f68a779b9f97241f
进入动画效果很好,退出动画似乎没有被触发。单击向上按钮时,它将向上导航到逻辑父活动。但是,不是显示退出动画,而是显示进入动画。
我在这里错过了什么吗?
您launchMode
必须已设置为singleInstance
. 它覆盖了过渡动画。您应该将其设置为singleTop
.
在custome_out_next.xml 试试这个
<translate
android:interpolator="@android:anim/accelerate_interpolator"
android:fromXDelta="0"
android:toXDelta="-100%p"
android:duration="@android:integer/config_shortAnimTime" />
文档链接中描述了这种行为的原因:
如果父activity有launch mode <singleTop>
,或者upintent包含FLAG_ACTIVITY_CLEAR_TOP
,父activity被带到栈顶,并通过它的onNewIntent()
方法接收intent。
如果父活动具有启动模式<standard>
,并且向上意图不包含FLAG_ACTIVITY_CLEAR_TOP
,则将父活动从堆栈中弹出,并在堆栈顶部创建该活动的新实例以接收意图。