android.view.InflateException:二进制XML文件行#6:膨胀类片段时出错

android.view.InflateException:二进制XML文件行#6:膨胀类片段时出错,android,android-fragments,navigation-drawer,Android,Android Fragments,Navigation Drawer,我有一个使用导航抽屉的应用程序。在我的应用程序中,第一个片段(默认)包含google map和google map api活动。我面临的问题是,当我用另一个片段替换默认片段时,它工作正常,但当我再次返回默认页面时,应用程序崩溃并显示错误 android.view.InflateException:二进制XML文件行#6:膨胀类片段时出错 这是我的密码 public class MainActivity extends FragmentActivity { private static Strin

我有一个使用导航抽屉的应用程序。在我的应用程序中,第一个片段(默认)包含google map和google map api活动。我面临的问题是,当我用另一个片段替换默认片段时,它工作正常,但当我再次返回默认页面时,应用程序崩溃并显示错误

android.view.InflateException:二进制XML文件行#6:膨胀类片段时出错 这是我的密码

public class MainActivity extends FragmentActivity {
private static String TAG = MainActivity.class.getSimpleName();
Boolean flag = false;
ListView mDrawerList;
RelativeLayout mDrawerPane;
private DrawerLayout mDrawerLayout;
public static FragmentManager fragmentManager;
ArrayList<NavItem> mNavItems = new ArrayList<NavItem>();
static GoogleMap mMap;
FragmentTransaction fragmentTransaction;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    if (findViewById(R.id.mainContent) != null) {

        if (savedInstanceState != null) {
            return;
        }
        fragmentManager = getFragmentManager();
        fragmentTransaction = fragmentManager.beginTransaction();
        HomeFragment homefragment = new HomeFragment();
        fragmentTransaction.add(R.id.mainContent, homefragment).commit();
        flag = true;
    }

    mNavItems.add(new NavItem("Profile",R.drawable.ace));
    mNavItems.add(new NavItem("Book A Truck",R.drawable.ace));
    mNavItems.add(new NavItem("My Bookings",R.drawable.ace));
    mNavItems.add(new NavItem("Farecards",R.drawable.ace));
    mNavItems.add(new NavItem("Call Support",R.drawable.ace));
    mNavItems.add(new NavItem("About",R.drawable.ace));

    // DrawerLayout
    mDrawerLayout = (DrawerLayout) findViewById(R.id.drawerLayout);

    // Populate the Navigtion Drawer with options
    mDrawerPane = (RelativeLayout) findViewById(R.id.drawerPane);
    mDrawerList = (ListView) findViewById(R.id.navList);
    DrawerListAdapter adapter = new DrawerListAdapter(this, mNavItems);
    mDrawerList.setAdapter(adapter);

    // Drawer Item click listeners
    mDrawerList.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
            if (position == 4){
                String number = "tel:9643173925";
                Intent telephonecall = new Intent(Intent.ACTION_CALL,Uri.parse(number));
                startActivity(telephonecall);
                mDrawerLayout.closeDrawer(mDrawerPane);
            } else if (position == 1 && flag) {
                mDrawerLayout.closeDrawer(mDrawerPane);
            } else {
                selectItemFromDrawer(position);
            }
        }
    });
}

private void selectItemFromDrawer(int position) {
    Fragment fragment = new HomeFragment();
    Class fragmentClass = null;
    switch (position) {
        case 0:
            fragmentClass = ProfileFragment.class;
            flag = false;
            break;
        case 1:
            fragmentClass = HomeFragment.class;
            flag = true;
            break;
        case 2:
            fragmentClass = MybookingFragment.class;
            flag =false;
            break;
        case 3:
            fragmentClass = FarecardFragment.class;
            flag = false;
            break;
        case 5:
            fragmentClass = AboutFragment.class;
            flag = false;
            break;
        default:
            fragmentClass = HomeFragment.class;
            flag = true;
            break;
    }
    try {
        fragment = (Fragment) fragmentClass.newInstance();
    } catch (Exception e) {
        e.printStackTrace();
    }
    String backstackname = fragmentClass.getName();
    FragmentManager fragmentManager = getFragmentManager();
    fragmentManager.beginTransaction().replace(R.id.mainContent, fragment).addToBackStack(null).commit();
    mDrawerLayout.closeDrawer(mDrawerPane);
}

您需要将
放在活动\u main的末尾。xml

表示问题在
活动\u main
布局中。共享xml
activity\u main
文件xml能否请您也向我们展示您的xml代码?这可能不是问题的根源,但您还应该为导航抽屉使用一个片段。
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">

<!-- The main content view -->
<FrameLayout
    android:id="@+id/mainContent"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<!-- The navigation drawer -->
<RelativeLayout
    android:layout_width="280dp"
    android:layout_height="match_parent"
    android:id="@+id/drawerPane"
    android:layout_gravity="start">

    <!-- Profile Box -->

    <RelativeLayout
        android:id="@+id/profileBox"
        android:layout_width="match_parent"
        android:layout_height="100dp"
        android:background="#A91C44"
        android:padding="8dp" >

        <ImageView
            android:id="@+id/avatar"
            android:layout_width="50dp"
            android:layout_height="50dp"
            android:src="@drawable/ace"
            android:layout_marginTop="15dp" />

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="42dp"
            android:layout_centerVertical="true"
            android:layout_marginLeft="15dp"
            android:layout_toRightOf="@+id/avatar"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/userName"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="Sushant"
                android:textColor="#fff"
                android:textSize="16sp"
                android:textStyle="bold" />

            <TextView
                android:id="@+id/desc"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="bottom"
                android:layout_marginTop="4dp"
                android:text="View Profile"
                android:textColor="#fff"
                android:textSize="12sp" />
        </LinearLayout>
    </RelativeLayout>

    <!-- List of Actions (pages) -->
    <ListView
        android:id="@+id/navList"
        android:layout_width="280dp"
        android:layout_height="match_parent"
        android:layout_below="@+id/profileBox"
        android:choiceMode="singleChoice"
        android:background="#ffffffff" />

</RelativeLayout>
android.view.InflateException: Binary XML file line #6: Error inflating class fragment
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:713)
        at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
        at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
        at in.moovo.route.HomeFragment.onCreateView(HomeFragment.java:105)
        at android.app.Fragment.performCreateView(Fragment.java:1700)
        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:890)
        at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1062)
        at android.app.BackStackRecord.run(BackStackRecord.java:684)
        at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1447)
        at android.app.FragmentManagerImpl$1.run(FragmentManager.java:443)
        at android.os.Handler.handleCallback(Handler.java:733)
        at android.os.Handler.dispatchMessage(Handler.java:95)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5086)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.IllegalArgumentException: Binary XML file line #6: Duplicate id 0x7f0e0074, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.maps.MapFragment
        at android.app.Activity.onCreateView(Activity.java:4808)
        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:689)