如何从 onNavigationItemSelected 方法启动 FragmentActivity

用户4497065

我使用以下部分替换FrameLayoutFragment内部onNavigationItemSelected方法,

public boolean onNavigationItemSelected(MenuItem item) {
     int id = item.getItemId();
     Fragment fragment;

     if (id == R.id.nav_camara) {
         fragment = new MyFragment();
         FragmentTransaction ft = getFragmentManager().beginTransaction();
         ft.replace(R.id.mainFrame, fragment);
         ft.commit();
     }
     else if (id == R.id.nav_gallery) {

     }
     else if (id == R.id.nav_slideshow) {

     }
     else if (id == R.id.nav_manage) {

     } else if (id == R.id.nav_share) {

     } else if (id == R.id.nav_send) {

     }
}

我想替换FrameLayoutFragmentActivity,然后我做到了

FragmentActivity fragmentAc;

 if (id == R.id.nav_camara) {
     fragmentAc= new MyFragmentActivity();
     FragmentTransaction ft = getFragmentManager().beginTransaction();
     ft.replace(R.id.mainFrame, fragmentAc);
     ft.commit();
 }

但要Wrong 2nd argument type. Found: 'android.support.v4.app.FragmentActivity', required: 'android.app.Fragment'上线ft.replace(R.id.mainFrame, fragmentAc);

我现在应该改变什么,帮帮我

安萨曼·贾斯瓦尔

你试图通过FragmentActivity它需要的地方Fragment,这就是错误所说的。

如果要打开另一个活动而不是替换片段,则必须调用 startActivity(...)

代替:

if (id == R.id.nav_camara) {
     fragmentAc= new MyFragmentActivity();
     FragmentTransaction ft = getFragmentManager().beginTransaction();
     ft.replace(R.id.mainFrame, fragmentAc);
     ft.commit();
 }

和:

if (id == R.id.nav_camara) {
    startActivity(new Intent(getActivity(), MyFragmentActivity.class));
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

(Android)如何从FragmentActivity调用片段中的方法

如果动态添加片段,如何在fragmentActivity中启动片段?

Android Kotlin-无法调用onNavigationItemSelected方法

导航视图未调用onNavigationItemSelected方法

从FragmentActivity启动的片段未显示

如何在android中的onMapReady()中获取onNavigationItemSelected()值

使用FragmentActivity时如何使用setRetainInstance(一个Fragment方法)?

从适配器类启动FragmentActivity

如何为FragmentActivity设置空视图?

无法解析方法 getSupportFragmentManager() 或 ((FragmentActivity)activity)getSupportFragmentManager()

如何修复Android Studio 3.5导航活动模板onNavigationItemSelected不起作用

在不调用onNavigationItemSelected方法的情况下在BottomNavigationView中突出显示菜单项

如何将参数从FragmentActivity传递给Fragment

如何将数据加载并绑定到FragmentActivity内部的ListFragments

如何在FragmentActivity上设置工具栏?

如何在Activity布局中包括FragmentActivity布局?

Android FragmentActivity如何在可见片段时刷新

如何从FragmentActivity调用片段布局以避免NullPointerException

如何在FragmentActivity中将ListFragment与常规Fragment结合?

onNavigationItemSelected不被调用

无法在扩展FragmentActivity的类中解析方法getActivity()

通过父FragmentActivity调用Fragment方法,获取NullPointerException

如何从方法内部启动ViewController?

每个启动前报告中的某些设备上的FragmentActivity失败的入职活动

onNavigationItemSelected 未注册用户选择

不会调用NavigationView onNavigationItemSelected

onNavigationItemSelected 打开活动 XML 问题

如何将FragmentActivity的后堆栈弹出到上一个活动?

如何将地图视图添加到我的Android应用fragmentactivity