片段和DialogFragment之间的通信

片段和DialogFragment之间的通信

问题描述:

我试图做一个片段 A 对话框使用的 DialogFragment API

I'm trying to make a Fragment to show a Dialog using DialogFragment API.

我的对话框中只有一个的EditText 看法,我想通过它的串写回片段

My dialog only has an EditText view and I want to pass the string wrote on it back to the Fragment.

我能够显示来自片段的对话框,但我不能够检索从输入字段后面的字符串,以我的片段

I'm able to show the dialog from the Fragment, but I'm not able to retrieve the string from the input field back to my Fragment.

我想两种方式来创建一个对话框:覆盖 DialogFragment.onCreateView 方法和写作的整个对话的视图,并覆盖 DialogFragment.onCreateDialog 和使用 AlertDialog.Builder ,使其更容易编写按钮的行为。

I tried both ways to create a dialog: overwriting the DialogFragment.onCreateView method and writing the entire dialog's view and overwriting the DialogFragment.onCreateDialog and using the AlertDialog.Builder to make it easier to write the buttons behavior.

有关对话框传递活动回到对话的主机一个Android的文件>约的主机是永远的活动,从来没有一个片段。我试着概括为使用它在我的情况下的行为,但我不能。

The Android documentation about dialogs passing events back to dialog's host is about host being always an Activity and never a Fragment. I tried to generalize the behavior for use it on my case, but I cannot.

我尝试使用 DialogFragment.onAttach 回调以获取活动参考和使用的片段和 DialogFrament ,它工作正常,但我不能检索片段活动,使其工作。

I tried using the DialogFragment.onAttach callback to get the Activity reference and use an interface between the Fragment and the DialogFrament and it works fine, but I cannot retrieve the Fragment from the Activity to make it work.

任何人可以帮助一个简单的例子?

Can anybody help with a brief example?

在此先感谢

您可以使用setTargetFragment$c$c>和getTargetFragment$c$c> 片段的方法。您可以设置片段 DialogFragment 的目标,然后检索参考它在 DialogFragment

You can use the setTargetFragment and getTargetFragment methods of Fragment. You can set your Fragment as the target of the DialogFragment and then retrieve a reference to it from within the DialogFragment.