嵌套片段生命周期

Lin*_*ton 5 android android-fragments fragment-lifecycle android-nested-fragment

我有4个片段。我通过使用hide/ show事务在它们之间切换。其中之一可能具有嵌套的片段,这些片段是通过replace事务添加的。问题是,如果我添加一个嵌套片段,则隐藏主片段,然后再次显示它,onHiddenChanged则不会调用嵌套片段的方法。为什么这样?如何确定嵌套片段何时可​​见?

log*_*gan 4

我也遇到过你面临的问题。

我发现隐藏/显示父片段对子片段的可见状态没有影响,并且不会调用并且始终onHiddenChanged()返回。isVisible() = true

请参阅我在另一个问题中的回答以了解我的解决方法。

基本上,我在 a 上创建了自己的getIsVisible()函数BaseFragment,它递归地查看任何父级以找到它的实际可见状态。我相信您可以onHiddenChanged()通过将其传播到所有子片段来执行类似的操作。

我知道这已经很旧了,但也许有人可以从这些知识中受益:)