2013-05-03 23 views
0

我需要找到当前由FragmentActivity显示的片段。如何以编程方式查找当前由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? 

我该如何做到这一点?

+0

Simmilar问题:http://stackoverflow.com/questions/9294603/get-currently-displayed-fragment – Apfelsaft 2013-05-03 12:02:05

回答

0

您必须使用片段管理器。

有两种方法:

findFragmentByTag和findFragmentById

如果你推片段插入您可以通过布局ID号和它的布局。

标记可以为空或由程序员设置之前。

您也可以迭代片段管理器的堆栈。

得到SupportFragmentManager,一个FragmentActivity里面写:

getSupportFragmentManager() 
0

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

相关问题