我试图在Android中创建一个导航抽屉,我遇到了一些问题.我的MainActivity.java中有一个方法可以处理我在导航抽屉上的点击,并指导用户进行适当的活动.方法如下所示:
@OverrIDepublic voID onNavigationDrawerItemSelected(int position) { // update the main content by replacing fragments androID.app.Fragment objFragment = null; switch (position){ case 0: objFragment= new menu1_Fragment(); break; case 1: objFragment = new menu2_Fragment(); break; case 2: objFragment = new menu3_Fragment(); break; } FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction() .replace(R.ID.container, objFragment) .commit();}
我的问题是我在.replace(R.ID.container,objFragment)的第三行到最后一行出错:FragmentTransaction无法应用于(int,androID.app.fragment)
解决方法:
如果使用SupportFragmentManager,则需要使用支持片段
http://developer.android.com/reference/android/support/v4/app/Fragment.html
http://developer.android.com/reference/android/support/v4/app/FragmentManager.html
VS
http://developer.android.com/reference/android/app/FragmentManager.html
http://developer.android.com/reference/android/app/Fragment.html
你永远不能在两者之间混合搭配
// update the main content by replacing fragments androID.support.v4.app.Fragment objFragment = null; switch (position){ case 0:
清晰度,替换:
androID.app.Fragment objFragment = null;
同
androID.support.v4.app.Fragment objFragment = null;
总结以上是内存溢出为你收集整理的java – FragmentManager.beginTransaction()不能应用于(int,android.app.fragment)全部内容,希望文章能够帮你解决java – FragmentManager.beginTransaction()不能应用于(int,android.app.fragment)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)