当前位置: 首页 > 知识库问答 >
问题:

如何让DialogFraank调用另一个Fraank中的方法

蒋培
2023-03-14

像往常一样,我有一个选项卡式活动,通过viewpager显示片段。此片段有一个列表。

用户的一个操作显示一个dialogfragment,以便用户在此列表中插入一个新项。

我显示带有EditText的dialogfragment,以便用户创建一个新项目。

问题是:如何将此项目插入到viewpager的片段列表中?

从任何片段中,我都可以调用getActive()来访问活动,但是如何访问对话框片段后面显示的另一个片段呢?

提前谢谢。

共有3个答案

辛麻雀
2023-03-14

您可以为此使用事件总线。

http://square.github.io/otto/

这是一个用法示例:

Bus bus = new Bus();

bus.post(new AnswerAvailableEvent(42));

@Subscribe public void answerAvailable(AnswerAvailableEvent event) {
    // TODO: React to the event somehow!
}

bus.register(this); // In order to receive events, a class instance needs to register with the bus.
后阳炎
2023-03-14

听起来你想从dialogfragment(用户在dialogfragment编辑文本中插入的内容)中获得结果,并在称为dialogfragment的片段中使用它(将其作为新项目添加到列表中)-在这种情况下,这里选择的答案解决了这个问题-我认为这个要点也是一个很好的参考资源。在您的情况下,我还认为实现某种自定义侦听器/回调(正如本文所述)是一个好主意。希望这有帮助。

丌官浩旷
2023-03-14

带列表项的片段-FragmentA对话框-NewItemDialogFragment

缺少的方法是setTargetFragment()。在构建新项目对话框片段时,调用此方法,将片段a作为对话框的目标片段传递。稍后,您可以通过在新项目对话框片段(NewItemDialogFragment)中调用getTargetFragment()来访问片段(FragmentA)实例,并将其转换为片段(FragmentA)并添加新创建的项目。

或者,您可以在片段a和NewItemDialogFragment之间创建合同接口

 类似资料:
  • 我有一个片段,它打开一个对话框fragment来获取用户输入(一个字符串和一个整数)。我该如何将这两样东西送回碎片? 这是我的对话片段: 我需要在单击按钮之后和 以下是数据需要发送到的片段: 因此,一旦用户在Dialogfragment中选择日期,它必须返回月份和年份。 然后,按钮上的文本应更改为用户指定的月份和年份。

  • 我需要了解如何将方法返回到方法中,以打印出计算机的随机选择。 打印语句之后的最后一个方法不完整;我只是被这部分卡住了。

  • 嗨我正在努力解决我面临的问题 我想做的是调用test1类的zahl方法 这是我尝试过的,但它什么也没有返回,即使它应该显示我的错误。

  • 问题内容: 如何在同一个变量中调用另一个变量? 问题答案: 首先声明您的方法以接受参数: 然后通过: 使用实例变量不是一个很好的选择,因为它将需要在调用 之前 调用一些代码来设置值,并且对此没有控制权,这可能会导致错误。而且它也不是线程安全的。

  • 问题内容: 所以我基本上想做的很简单 由于某种原因,它无法正常工作。在我的Javascript控制台(Chrome浏览器)中 编辑1:我已经添加了实际的代码,如您所见,我在构造函数中绑定了validateEmail 问题答案: 您的方法已正确定义,因此问题出在如何 调用上 。 您以一种设置为实例以外的方式调用它。这在事件侦听器中很常见。我想您的代码中有一些类似的代码: React 的推荐解决方案是

  • 我做这个任务已经有一段时间了;很好的1-2天,我想我第一节课上的一切都是正确的,那是我为Java制作的。作业要我做的是在第一节课中进行方法和计算,然后在第二节课中调用它。我做了第二个类,我试图让用户输入购买物品的数量,然后它会显示出来 购买的金额 我做了;在第二个类中,扫描仪用来保存输入的数字量,以及一个系统。出来用户将要购买的金额的println。但是我如何从另一个类调用这个方法呢?我试过以下方