识别视图所属的片段

Identify the fragment a view belongs too

我在我的应用程序中使用片段动态添加或删除输入 ui 元素,其方式与联系人应用程序处理 phone 号码、电子邮件等的方式相同。我不能然而,似乎弄清楚了如何删除碎片。

每个片段的 add/remove 按钮是片段本身的一部分,并调用父 activity 中的 onClick 方法,该方法将按钮视图作为单一参数。我检查按钮的背景图像以确定要采取什么操作,添加或删除。

添加工作正常,因为我只是创建了一个新的 MyFragment 对象,将其添加到数组中,然后使用片段管理器显示片段。

但是,对于删除,我找不到任何可以让我识别调用按钮属于哪个片段的东西。我需要知道要从数组中删除哪个片段,并能够使用片段管理器定位特定片段。有什么方法可以获取 view 参数的包含片段 onClick?

当使用 Fragment 1.2.1 or higher, you can use FragmentManager.findFragment(vew) or the Kotlin extension (in fragment-ktx) of view.findFragment() 获取包含片段时。

从那里,如果您还没有对正确的 FragmentManager.[=18 的引用,您可以使用 getParentFragmentManager() 获取 Fragment 附加到的 FragmentManager =]