为了账号安全,请及时绑定邮箱和手机立即绑定

如何将getChildFragmentManager与扩展Dialog片段的类一起使用

如何将getChildFragmentManager与扩展Dialog片段的类一起使用

繁星点点滴滴 2021-05-06 10:19:57
我正在使用TabLayout播放片段。一旦我从TabLayout片段移动到下一个片段,然后按返回键。默认的TabLayout片段上的内容消失了。我在帖子中找到了可能的解决方案。以下是TabLayout的代码。public class IndividualCollectionSheetFragment extends MifosBaseFragment {private TabLayout tabLayout;private ViewPager viewPager;private View rootView;public IndividualCollectionSheetFragment() {}public static IndividualCollectionSheetFragment newInstance() {    Bundle args = new Bundle();    IndividualCollectionSheetFragment fragment = new IndividualCollectionSheetFragment();    fragment.setArguments(args);    return fragment;}@Overridepublic void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);}@Nullable@Overridepublic View onCreateView(LayoutInflater inflater,                         @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {    rootView = inflater.inflate(R.layout.fragment_individual_recycler, container, false);    ButterKnife.bind(this, rootView);    setToolbarTitle(getStringMessage(R.string.individual_collection_sheet));    viewPager = rootView.findViewById(R.id.viewpager);    setupViewPager(viewPager);    tabLayout = rootView.findViewById(R.id.tabs);    tabLayout.setupWithViewPager(viewPager);    return rootView;}帖子中的解决方案建议使用getChildFramentManager而不是getSupportFragmentManager。我一改成getChildFragmentManager。我得到了错误。        java.lang.IllegalStateException: Fragment CollectionSheetDialogFragment{572dd42 #0 Identifier Dialog Fragment} declared target fragment NewIndividualCollectionSheetFragment{45e8153 #0 id=0x7f090361 android:switcher:2131297121:0} that does not belong to this FragmentManager!这可能是由于扩展了DialogFragment的CollectionSheetDialogFragment类造成的,并且与所使用的不同片段管理器之间必须存在不一致之处。
查看完整描述

2 回答

?
婷婷同学_

TA贡献1844条经验 获得超8个赞

也许这项工作:替换 getFragmentManager() 而不是getChildFragmentManager()


查看完整回答
反对 回复 2021-05-19
  • 2 回答
  • 0 关注
  • 255 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信