【问题标题】:FragmentNavigator shared transition doesn't workFragmentNavigator 共享过渡不起作用
【发布时间】:2019-05-17 01:00:48
【问题描述】:

我正在使用导航架构组件实现导航,试图在ImageView 上的两个片段之间进行转换,所以我将这个android:transitionName="trans" 添加到我的xml 文件中的ImageView 第一个片段和第二个片段中,并将其添加到我的 Java 代码中

FragmentNavigator.Extras extras = new FragmentNavigator.Extras.Builder()
    .addSharedElement(imageView, "trans")
    .build();
Navigation.findNavController(v).navigate(R.id.action_mainFragment_to_addFragment,
     null,
     null,
     extras);

也尝试像这样使用Direction

MainFragmentDirections.ActionMainFragmentToAddFragment toAddFragment = MainFragmentDirections.actionMainFragmentToAddFragment();
Navigation.findNavController(v).navigate(toAddFragment, extras);

但是没有动画。以上代码来自官方documentation

【问题讨论】:

  • 我在androidx.navigation:navigation-fragment-ktx:2.1.0androidx.navigation:navigation-ui-ktx:2.1.0 发现了同样的问题

标签: android navigation androidx


【解决方案1】:

尝试添加片段

override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            sharedElementEnterTransition = TransitionInflater.from(context).inflateTransition(android.R.transition.move)
        }
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-23
    • 1970-01-01
    • 2012-08-09
    • 2015-12-09
    相关资源
    最近更新 更多