创建 DialogFragment - 使用 onCreateDialog() 还是 onCreateView()?

qua*_*rtz 5 android android-dialogfragment

我想创建一个带有登录按钮的主屏幕,单击该按钮后,会打开一个对话框以输入密码,然后提交或取消。

我已经读过有两种方法可以做到这一点,以便创建一个DialogFragment- usingonCreateDialog()onCreateView().

这两个选项有什么区别,在哪些场景下使用哪一个?

Raa*_* SN 5

onCreateDialog()用于显示基本对话。这是显示对话框的最简单方法。使用此方法时,您需要使用内置对话框(如 AlertDialog)的 builder 方法来构建对话框和正面和负面按钮的侦听器,并返回一个对话框。

另一方面,OnCreateView()您可以返回一个用作对话框的视图。您可以使用自己的布局来构建对话框 UI。您自己的按钮并听取他们的意见。简单来说就是你自己的自定义对话框。

另请注意:您甚至可以onCreateDialog()通过调用 setView() 方法为内置对话框设置视图,例如 AlerDialog 。将onCreateView()用于从自己的布局建立自己的对话框。您应该使用哪个版本完全取决于您。我希望它有帮助。