【发布时间】:2019-03-31 16:29:01
【问题描述】:
背景
当您单击 Recyclerview 条目并且详细信息显示在全屏片段中时,我正在尝试实现“父到子”导航转换。像这样的:
问题
如果有这么多可用的动画 API,我该如何做呢? (TransitionManager.beginDelayedTransition、SharedTransition、setExitTransition 等)
我的尝试
InboxRecyclerView - 这符合我的要求,除非它似乎只在详细视图与 Recyclerview 的布局相同时才有效。因为我使用片段回栈在片段之间导航,所以我需要它在附加之前可能不可用的布局之间进行转换。
This post - 答案仅涵盖活动到活动的转换。我正在寻找片段到片段。
-
自定义转换 - 我尝试扩展转换类,但遇到了问题。 CaptureStartValues() 似乎从整个场景中捕获值。我需要它来仅从 recyclerview 条目中捕获值。此外,由于某种原因,当我在函数 createAnimator(ViewGroup sceneRoot, TransitionValues startValues, TransitionValues endValues) 中得到 null endValues 时,未捕获结束值。
TransitionSet exitTransition = new TransitionSet() .addTransition(new ChangeBounds()) .addTransition(new ChangeTransform()) .addTransition(new ChangeClipBounds()) .addTransition(new ChangeImageTransform()) .addTransition(new Expand()) .setOrdering(TransitionSet.ORDERING_TOGETHER); TransitionSet enterTransition = new TransitionSet() .addTransition(new Fade()); newFragment.setEnterTransition(enterTransition); oldFragment.setExitTransition(exitTransition);
【问题讨论】:
标签: android android-fragments android-recyclerview material-design android-transitions