【问题标题】:getParentFragment() in fragments is returning null when fragment is popped out from backstack当片段从后台堆栈中弹出时,片段中的 getParentFragment() 返回 null
【发布时间】:2018-05-22 10:06:02
【问题描述】:

我有一个包含 framelayout 的活动,片段 A 托管在 getSupportFragmentManager() 中。

此片段 A 托管另外两个片段,其中包含回收器视图 - 片段 A1 和片段 A2 使用 FragmentStatePagerAdapter。此时我能够在片段 A1 和 A2 中使用 getSupportFragmentManager() 获得父片段。

单击 A1 和 A2 中的回收器视图项会导致另一个片段,例如片段 B,它替换片段 A 并将其添加到后台堆栈。

现在问题来了,当我按下返回按钮时,我能够获得片段状态 A 视图,但 getSupportFragmentManager() 为 A1 和 A2 片段中的父片段返回 null。

这个方法应该如何正确使用?

【问题讨论】:

  • 请测试 getChildFragmentManager() 而不是 getSupportFragmentManager()

标签: android android-fragments fragmentstatepageradapter android-nested-fragment


【解决方案1】:

当 viewpager 嵌套在片段中时,在 viewpager 中使用 getChildFragmentManager()。

adapter = new ViewPagerAdapter(getChildFragmentManager());

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 2022-12-11
    • 1970-01-01
    • 1970-01-01
    • 2012-06-22
    • 2016-12-15
    • 1970-01-01
    相关资源
    最近更新 更多