gpt4 book ai didi

android - 为什么 Android O 失败并显示 “does not belong to this FragmentManager!”

转载 作者:行者123 更新时间:2023-11-30 00:19:24 25 4
gpt4 key购买 nike

我已将我的应用程序迁移到 Android Studio 3 中的 Android O

在 Android O 模拟器上运行我所有的 dialogFragments 现在都失败了:-

java.lang.IllegalStateException: Fragment CustomAlertDialogFragment{41cfde98 #0 dialog} declared target fragment LayoutOne{41e7f970 #0 id=0x7f0d0207 android:switcher:2131558919:0} that does not belong to this FragmentManager!

我在以下代码中遇到错误:-

 Modules.showDialog(bundledialog, DIALOG_FOUND, this, getChildFragmentManager());

public static void showDialog(Bundle bundle, int type, Fragment fragment, FragmentManager manager)
{
CustomAlertDialogFragment diag=new CustomAlertDialogFragment();
diag.setTargetFragment(fragment, type);
diag.setArguments(bundle);
try {
diag.show(manager, "dialog");
} catch (Exception e) {
e.printStackTrace();
}

}

最佳答案

当您显示另一个 fragment 中的一个 fragment 并将其用作目标时,就会发生这种情况。作为解决方法,您可以使用:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
getActivity().getFragmentManager().beginTransaction().add(dialogFrag, "dialog").commit();
} else {
getChildFragmentManager().beginTransaction().add(dialogFrag, "dialog").commit();
}

关于android - 为什么 Android O 失败并显示 “does not belong to this FragmentManager!”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46581800/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com