DialogFragment
DialogFragment在android 3.0时被引入。是一种特殊的Fragment,用于在Activity的内容之上展示一个模态的对话框。典型的用于:展示警告框,输入框,确认框等等。使用DialogFragment比单纯使用Dialog有优势,在屏幕旋转后弹窗不会消失。
如何创建
首先创建一个继承DialogFragment的类,重写onCreatDialog方法

定义AlertDialog

不要忘记定义布局文件,这里显示的是一个DatePicker。
调用AlertDialog
使用show(manager,TAG),第二个参数目前不知道有什么作用。

总结
DialogFragment中重写onCreateDialog方法,返回一个Dialog。
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
Logger.d(TAG, "onCreateDialog");
AppCompatDialog appCompatDialog = new AppCompatDialog(requireActivity());
TextView textView = new TextView(requireActivity());
textView.setText("通过onCreateDialog使用DialogFragment");
textView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 28);
appCompatDialog.setContentView(textView);
return appCompatDialog;
}
在Activity中使用DialogFragment。
private void showOnCreateDialogFragment(){
DialogFragment dialogFragment = new DialogFragment();
dialogFragment.show(getSupportFragmentManager(), "tag");