Android 是否不支持使用FragmentTransaction添加ListFragment?
我有一个Android 是否不支持使用FragmentTransaction添加ListFragment?,android,android-layout,android-emulator,android-intent,android-fragments,Android,Android Layout,Android Emulator,Android Intent,Android Fragments,我有一个列表片段: public class MyListFragment extends ListFragment{ ... } 为了在我的Android 2.1 API 7项目中使用片段,我使用了。(已为支持包配置了所有内容) 在我的主机活动中看起来像: import android.support.v4.app.FragmentActivity; import android.support.v4.app.FragmentManager; import android.sup
列表片段
:
public class MyListFragment extends ListFragment{
...
}
为了在我的Android 2.1 API 7项目中使用片段,我使用了。(已为支持包配置了所有内容)
在我的主机活动中看起来像:
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
类型的参数,但是,我有listframent
,这是此方法不可接受的
那么,如何使用
FragmentTransaction
添加ListFragment
问题可能是因为您正在导入android.support.app.ListFragment请尝试使用嵌套片段。通过这种方式,您可以将ListFragment包装在一个片段中,您可以在FragmentTransaction中使用该片段
MyListFragment扩展了android.support.v4.app.ListFragment?Ovidiu,你是对的,我为ListFragment导入了错误的内容。谢谢但是新的问题是,在我从v4.app.ListFragment而不是android.app.ListFragment导入之后,我不能再在ListFragment中使用onAttach(Activity hostActivity)方法,如何解决这个问题?@Leem.fin您应该可以使用它。我建议您列出ListFragment的代码以及所有导入来解决这个问题。