在我的应用程序中,我需要在单击导航抽屉上的不同项目时在片段之间切换。我为它创建了一个新方法DisplayFragment。这是代码:
private void DisplayFragment(int position)
{
Fragment fragment = null;
switch (position){
case 0:
fragment = new Fragment1();
break;
case 1:
fragment = new Fragment2();
break;
case 2:
fragment = new Fragment3();
break;
case 3:
fragment = new Fragment4();
break;
if(fragment!= null)
this.getFragmentManager().beginTransaction().replace(R.id.frame_container,fragment()).commit();
}
它显示错误“上面一行中的片段元素如下”错误的第二个参数类型找到android.support.v4.app.Fragment;需要android.app.Fragment;“
我尝试将导入从android.support.v4.app.Fragment更改为android.app.Fragment;但它会显示Fragment fragment = null语句的错误。我做错了什么?
答案 0 :(得分:0)
您需要让支持片段管理器使用android.support.v4.app.Fragment
。
this.getSupportFragmentManager().beginTransaction().replace(R.id.frame_container, fragment).commit();
所以,getSupportFragmentManager()
代替getFragmentManager()
。此外,在这种情况下,您无需使用this
。