gpt4 book ai didi

android - 从 fragment 显示对话框?

转载 作者:IT老高 更新时间:2023-10-28 13:01:36 25 4
gpt4 key购买 nike

我有一些 fragment 需要显示常规对话框。在这些对话框中,用户可以选择是/否的答案,然后 fragment 应该做出相应的行为。

现在,Fragment 类没有要覆盖的 onCreateDialog() 方法,所以我想我必须在包含 的外部实现对话框> Activity 。没关系,但是 Activity 需要以某种方式将选择的答案报告给 fragment 。我当然可以在这里使用回调模式,所以 fragment 在 Activity 中注册自己的监听器类,Activity 会通过那个或类似的东西报告答案。

但这对于在 fragment 中显示“简单”是-否对话框这样的简单任务来说似乎是相当大的困惑。此外,这样我的 Fragment 将不那么独立。

有更简洁的方法吗?

编辑:

这个问题的答案并没有真正详细解释应该如何使用 DialogFragments 来显示来自 Fragments 的对话框。所以AFAIK,要走的路是:

  1. 显示 fragment 。
  2. 在需要时,实例化一个 DialogFragment。
  3. .setTargetFragment()将原来的Fragment设置为这个DialogFragment的目标。
  4. 使用原始 fragment 中的 .show() 显示 DialogFragment。
  5. 当用户在这个DialogFragment上选择某个选项时,通知原Fragment这个选择(例如用户点击'yes'),你可以通过.getTarget()获取原Fragment的引用。
  6. 关闭 DialogFragment。

最佳答案

我必须谨慎地怀疑以前接受的答案,即使用 DialogFragment 是最佳选择。 DialogFragment 的预期(主要)目的似乎是显示 对话框本身的 fragment ,而不是显示 对话框要显示的 fragment 。

我相信使用 fragment 的 Activity 在对话和 fragment 之间进行调解是更可取的选择。

关于android - 从 fragment 显示对话框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com