2

我有一个ListFragment添加ListFragment与FragmentTransaction不支持?

public class MyListFragment extends ListFragment{ 
     ... 
} 

为了使用片段Android 2.1的API 7项目,我用的是support package。 (一切都配置用于支持包)

在我的主机活动看起来像:

import android.support.v4.app.FragmentActivity; 
import android.support.v4.app.FragmentManager; 
import android.support.v4.app.FragmentTransaction; 

public class FragmentNavActivity extends FragmentActivity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     ... 

     FragmentManager fMgr = getSupportFragmentManager(); 
     FragmentTransaction fTrans = fMgr.beginTransaction(); 

     MyListFragment myListFragment = new MyListFragment(); 

     fTrans.add(android.R.id.content, myListFragment).commit(); //problem here 

     ... 
    } 

} 

的问题是,所述FragmentTransaction.add(int, Fragment)方法接受参数与Fragment类型中的第二个,但是,我有ListFragment这是不可接受的这种方法。

那么,如何将ListFragment加上FragmentTransaction

+4

MyListFragment延伸android.support.v4.app.ListFragment? – 2012-02-08 16:03:51

+1

Ovidiu,你是对的,我有一个错误的ListFragment导入。谢谢!但新的问题是,我从v4.app.ListFragment而不是android.app.ListFragment导入后,我不能再使用ListFragment中的onAttach(Activity hostActivity)方法,如何摆脱这个问题? – 2012-02-08 16:07:03

+0

@ Leem.fin你应该可以使用它。我建议你列出ListFragment的代码与所有进口来解决这个问题。 – 2013-06-21 08:33:54

回答

1

也许问题出在您正在导入android.support.app.ListFragment

0

尝试使用嵌套片段。这样,你就可以换你的ListFragment片段里面,你可以在你的FragmentTransaction使用

Nested Fragments