在http://developer.android.com/design/building-blocks/dialogs.html的Android设计文档中,明确区分了对话框、警告、弹出窗口和吐司。它还推荐使用
我知道
DialogFragment
类实现对话框和使用Toast
类实现吐司。然而,我不确定弹出窗口应该使用PopupWindow
还是DialogFragment
实现。我知道
DialogFragment
通常带有“确定/取消”按钮,而PopupWindow
的位置可以定义,但是:
- 这些微小的差异是使用其中一个的唯一参数吗?
DialogFragment
是PopupWindow
的继任者,将在某个时候被弃用吗?- 根据 https://dev59.com/l2Up5IYBdhLWcg3wmYct#15165554 中的答案,PopupWindow "仅限于少数模板",但我在类文档中找不到任何有关模板数量受限的参考。
- 那么,你会如何实现像这样的弹出窗口 http://developer.android.com/design/media/dialogs_popups_example.png,为什么?
DialogFragment
。此外,我认为基于Fragments
的事实使它更容易添加到BackStack中,而我不清楚如何使用PopupWindow
实现这一点。因此,我采用了DialogFragment
方法,尽管我仍然希望对比两个类的更深入的细节。 - leo9r