我有一个扩展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”
谢谢, 加特
答案 0 :(得分:0)
你错过了“()”
变化:
DetailFrag detailFrag = (DetailFrag) getSupportFragmentManager.findFragmentById(R.id.detail_frag)
为:
DetailFrag detailFrag = (DetailFrag) getActivity().getSupportFragmentManager().findFragmentById(R.id.detail_frag)
修改:尝试在getActivity()
之前添加getSupportFragmentManager()
。