为什么我要在 Android 中使用 DialogFragments 而不是常规片段?

Why would I want to use DialogFragments over Regular Fragments in Android?

令人惊讶的是,我找不到与此相关的任何帖子,所以我们开始吧:

为什么我要在 Android 中使用 DialogFragment 而不是简单的 Fragment?如果我只使用常规 FragmentDialogFragment 有什么优势我会错过?

可能值得一提的是我打算在里面有一个完全自定义的视图...

谢谢!

DialogFragment 只不过是 Fragment,看起来和行为都像 Dialog。所以你要不要用它完全取决于你想用它做什么。

根据我使用 DialogFragment 的经验,我倾向于将其用作列表项的 "detailed" 视图。悬停在列表上而不是完全覆盖它的那个(就像正常的 Fragment 那样),这样用户就不会丢失上下文。

就是这样;你可能想在任何你想显示依赖或需要保留其父上下文的视图的地方使用它。

p.s.,是的,您甚至可以在 DialogFragment. 中放置完全自定义的视图

嗯,基本上您在片段中拥有对话框的所有功能。 比如后面由系统处理,你可以在对话框视图外点击关闭对话框,你可以设置对话框不可取消。是的,外观和感觉与其他对话框相同。