我有一个Bundle
架构,我在Activity
中的另一个PreferenceFragmentCompat
内加载ViewGroup
。 MainActivity
中存在自定义导航,因此您可以使用片段加载MainActivity
,并在同一ViewGroup
内将其全部导航。
我第一次导航到MainActivity
时,ViewGroup
加载完全正常。但是,当我离开包含PreferenceFragmentCompat
的{{1}}然后再返回时,ViewGroup
不会显示后续时间。 PreferenceFragmentCompat
会这样做,但片段应该是空的。我可以看到断点/记录片段正在经历其生命周期 - 它只是不可见。
每次导航回PreferenceFragmentCompat
时,都会创建一个包含ViewGroup
和新ViewGroup
对象对的新对象,因此它不应该附加到旧{{} {1}}。导航架构太复杂了,无法在此处发布,但这里是我每次在包含PreferenceFragmentCompat
类中添加片段的方式:
ViewGroup
有没有人知道为什么片段可能不会出现?
答案 0 :(得分:1)
我发现了这个问题。这比我想象的要简单得多。由于每次都会创建一个新的ViewGroup
,因此该片段在被新ViewGroup
替换之前会被添加到旧R.id.fragment_frame_container
中,因为它们都包含ViewGroup
视图。解决方案是,如果它已经存在,每次都不会创建新的[low, high)
。