Android 导航组件-淡入特定内容
使用导航组件,我希望在转换期间将淡入效果应用于FadeInContent,并遵循以下顺序: Text1->Text2转换通过应用R.transition.move-in-sharedElement完成 FadeInContent在1后淡入。过渡 我看过这篇文章,它完全符合我的要求,但没有使用导航组件 ,因此我不能申请延期。我也不能应用NavOptions.Builder.setEnterAnimR.anim.fade_,因为它适用于所有屏幕,而不仅仅是FadeInContent。Android 导航组件-淡入特定内容,android,androidx,android-architecture-navigation,Android,Androidx,Android Architecture Navigation,使用导航组件,我希望在转换期间将淡入效果应用于FadeInContent,并遵循以下顺序: Text1->Text2转换通过应用R.transition.move-in-sharedElement完成 FadeInContent在1后淡入。过渡 我看过这篇文章,它完全符合我的要求,但没有使用导航组件 ,因此我不能申请延期。我也不能应用NavOptions.Builder.setEnterAnimR.anim.fade_,因为它适用于所有屏幕,而不仅仅是FadeInContent。 AFAIK导航
AFAIK导航组件只能处理过渡期间的运动,因此您正确地指出,没有办法延迟过渡 尽管如此,您可能希望通过场景过渡实现淡入动画 这看起来是一个更干净的方法来处理你暴露的情况 代码解决方案: 代码解决方案:
val transition = TransitionInflater.from(activity)
.inflateTransition(android.R.transition.move)
sharedElementEnterTransition = transition
setEnterSharedElementCallback(object : SharedElementCallback() {
override fun onMapSharedElements(
names: MutableList<String>?,
sharedElements: MutableMap<String, View>?
) {
super.onMapSharedElements(names, sharedElements)
fadeInContainer.loadAnimation(
activity,
R.anim.fade_in
)
}
})
val transition = TransitionInflater.from(activity)
.inflateTransition(android.R.transition.move)
sharedElementEnterTransition = transition
setEnterSharedElementCallback(object : SharedElementCallback() {
override fun onMapSharedElements(
names: MutableList<String>?,
sharedElements: MutableMap<String, View>?
) {
super.onMapSharedElements(names, sharedElements)
fadeInContainer.loadAnimation(
activity,
R.anim.fade_in
)
}
})