0

我需要找到当前由 FragmentActivity 显示的片段。

或者,我需要找到实现给定接口的片段。

    public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
    if (EditorInfo.IME_ACTION_DONE == actionId) {
        // Return input text to fragment
        AdjustPricesDialogListener fragment = (AdjustPricesDialogListener) ??? // how do I find this fragment?

我该如何做到这一点?

4

2 回答 2

0

您可以在 FragmentManager 上调用 findFragmentById() 并确定显示哪个片段。

于 2013-05-03T12:03:49.603 回答
0

您必须使用片段管理器。

有2种方法:

findFragmentByTag 和 findFragmentById

如果您将片段推送到布局中,则可以通过布局 ID 引用它。

Tag 可以为空,也可以由程序员之前设置。

您还可以遍历片段管理器的堆栈。

要获取 SupportFragmentManager,请在 FragmentActivity 中编写:

getSupportFragmentManager()
于 2013-05-03T12:15:06.770 回答