【问题标题】:Parent activity becomes invisible on exit transition父活动在退出转换时变得不可见
【发布时间】:2015-02-07 19:38:23
【问题描述】:

我正在使用 API 级别 21,在 Nexus 6 上进行测试。

我有两个活动:master + detail,每个视图都有一个片段。 当我在主列表中选择一个项目时,它会转换到详细视图。

我已启用主视图和详细视图的视图转换,如下所示:

    getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);

    Transition ts = new Slide(Gravity.RIGHT);
    ts.setDuration(2500);
    getWindow().setEnterTransition(ts);
    getWindow().setExitTransition(ts);

    getWindow().setAllowEnterTransitionOverlap(true);
    getWindow().setAllowReturnTransitionOverlap(true);

过渡动画按预期工作,除了一件事:当我选择一个项目时,父活动在它过渡出来时被隐藏,所以我看不到它。当我按回时,详细视图被转出(不隐藏)并且主视图被转入(不隐藏)。 那么为什么主视图在转出和细节视图转入时隐藏呢?

在 Android Studio 中,我看到一些日志帖子,例如:

changeCanvasOpacity: opaque=true
changeCanvasOpacity: opaque=false
changeCanvasOpacity: opaque=false
changeCanvasOpacity: opaque=false

前两行用于第一次转换(master => detail),后两行用于返回(detail => master)。如您所见,只有一行是“opaque = true”。我相信那是主视图被隐藏的时候(随着过渡开始)。

我怎样才能防止这种情况发生?

在这篇 Content Transitions In-Depth (part 2) 的帖子中,在“引擎盖下的内容转换”和第 1C 项下,它说“框架将 A 中的所有转换视图设置为不可见。”。

我相信这是我的问题。我该如何解决这个问题?

【问题讨论】:

  • 我想实现这样的目标(从 master => detail 转换时):christianpeeters.com/android-tutorials/…
  • 当动画更快时(例如,duration=300ms)不太明显,但如果你有 2500 ms 的持续时间,很明显调用视图在退出动画完成之前就消失了。

标签: android android-5.0-lollipop android-transitions


【解决方案1】:

我有一个类似的问题,并通过在调用 setContentView 之后添加这个 sn-p 在目标 Activity 的 onCreate 中解决它:

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        getWindow().setEnterTransition(null);
    }

【讨论】:

    【解决方案2】:

    我在使用ActivityOptionsCompat.makeSceneTransitionAnimation. 时遇到了同样的问题 我通过删除活动标志解决了它:android:launchMode="singleInstance" 可能是因为不同的任务不能使用翻译动画。

    【讨论】:

    • 这解决了我看到的子活动不会出现的问题。谢谢!
    【解决方案3】:

    在我意识到我打电话给supportPostponeEnterTransition() 而不打电话给supportStartPostponedEnterTransition() 之前,我就遇到了这个问题。我不得不调用这些,因为我使用 Glide 加载图像。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-11
      • 1970-01-01
      • 1970-01-01
      • 2016-03-28
      • 2011-05-21
      • 1970-01-01
      • 1970-01-01
      • 2016-09-21
      相关资源
      最近更新 更多