如何使用getSupportFragmentManger查找ListFragment

时间:2013-05-30 15:18:15

标签: android android-fragments

我有一个扩展ListFragment的片段,从另一个片段我想用getSupportFramentManager()。findFragment()找到我的ListFragment,即

DetailFrag detailFrag = (DetailFrag) getSupportFragmentManager.findFragmentById(R.id.detail_frag)

if (detailFrag != null){
  // do something with detailFrag...
}else{
  DetailFrag newFrag = new DetailFrag();
  // ....
}

// DetailFrag类实现

public class DetailFrag extends ListFragment{
 // ...
}

但是eclipse显示错误"cannot cast from Fragment to DetailFrag"

我注意到,getSupportFragmentManager.findFragmentById()方法返回一个片段,我怎样才能找到“ListFragment”

谢谢, 加特

1 个答案:

答案 0 :(得分:0)

你错过了“()”

变化:

DetailFrag detailFrag = (DetailFrag) getSupportFragmentManager.findFragmentById(R.id.detail_frag)

为:

DetailFrag detailFrag = (DetailFrag) getActivity().getSupportFragmentManager().findFragmentById(R.id.detail_frag)

修改:尝试在getActivity()之前添加getSupportFragmentManager()