如何从 Fragment 调用 AppCompatDialogFragment
How to call AppCompatDialogFragment from Fragment
我有一个 class
从 AppCompatDialogFragment
延伸
public class SendLetterDialogFragment extends AppCompatDialogFragment {
public static SendLetterDialogFragment newInstance() {
Bundle args = new Bundle();
SendLetterDialogFragment fragment = new SendLetterDialogFragment();
fragment.setArguments(args);
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.send_letter_dialog_fragment, container, false);
ButterKnife.bind(this, view);
return view;
}
}
当我从 Activity
(使用 `getSupportFragmentManager)显示它时,它起作用了。但是我不能在片段中使用这个方法:
SendLetterDialogFragment fragment = SendLetterDialogFragment.newInstance();
fragment.show(getFragmentManager(), "lol");
我读过一些类似这样的相关问题
Error showing support.v7.AppCompatDialogFragment using show() method 但他们没有帮助我。
如何从 Fragment
显示 AppCompatDialogFragment
?
P.S。 activity,片段所在的位置扩展了 AppComtapActivity
。
调用 getChildFragmentManager
而不是 getFragmentManager
没有帮助。
Screenshot
编辑
我没有解决这个问题,所以我决定用 AlertDialog.Builder
创建对话框。
使用 getChildFragmentManager()
代替 getFragmentManager()
。
我有一个 class
从 AppCompatDialogFragment
public class SendLetterDialogFragment extends AppCompatDialogFragment {
public static SendLetterDialogFragment newInstance() {
Bundle args = new Bundle();
SendLetterDialogFragment fragment = new SendLetterDialogFragment();
fragment.setArguments(args);
return fragment;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View view = inflater.inflate(R.layout.send_letter_dialog_fragment, container, false);
ButterKnife.bind(this, view);
return view;
}
}
当我从 Activity
(使用 `getSupportFragmentManager)显示它时,它起作用了。但是我不能在片段中使用这个方法:
SendLetterDialogFragment fragment = SendLetterDialogFragment.newInstance();
fragment.show(getFragmentManager(), "lol");
我读过一些类似这样的相关问题 Error showing support.v7.AppCompatDialogFragment using show() method 但他们没有帮助我。
如何从 Fragment
显示 AppCompatDialogFragment
?
P.S。 activity,片段所在的位置扩展了 AppComtapActivity
。
调用 getChildFragmentManager
而不是 getFragmentManager
没有帮助。
Screenshot
编辑
我没有解决这个问题,所以我决定用 AlertDialog.Builder
创建对话框。
使用 getChildFragmentManager()
代替 getFragmentManager()
。