【发布时间】:2014-03-04 19:00:20
【问题描述】:
我正在开发一个使用片段作为导航流程基础的安卓应用。 在某些时候,我遇到了一个我无法解决的问题。
所有片段都从一个基类扩展而来,该基类具有导航管理器所需的一些属性,称为 NavigationFragment,它从 Fragment 扩展而来。
现在,我需要在对话框中显示其中一个片段,例如弹出窗口。
我发现了神奇的类 DialogFragment 可以解决问题,但问题是片段不能从它扩展,因为它已经从 NavigationFragment 扩展。
我不想让 NavigationFragment 成为 DialogFragment,因为其中只有少数会显示为弹出窗口。
你知道这个的替代方法吗?像一个可以包含片段的对话框,还是其他东西?
谢谢!
【问题讨论】:
-
也许您可以从 DialogFragment 扩展并实现导航控制器。无论如何,如果您要在每个子类中覆盖导航命令,这将是最佳选择。
-
不幸的是,我没有覆盖子类中的命令。 NavigationFragment 覆盖片段中的 onViewCreated,并具有一个侦听器实例以与导航控制器通信。我正在考虑制作一个 NavigationDialogFragment 的选项,它扩展了 DialogFragment 并实现了这些功能。这不是我想要的,因为我需要修改导航控制器。
标签: android fragment fragmentmanager