Duplicate id 0x7f0a00b4, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.maps.MapFragment

0
  • i have Navigation Activity that holds different fragments when i start home fragment which contains two(passenger and Driver) more fragments inside it they are working perfectly..while running passenger fragment i start an activity from this fragment in which i perform some background task if it execute successfully then fragment also works fine but if somehow background task failed and then that activity crash and when i get back to that (passenger) fragment it also crash with following exception

 java.lang.NullPointerException
        at com.gol.apps.flickcar.NearByPlaces$ParserTask.onPostExecute(NearByPlaces.java:327)
        at com.gol.apps.flickcar.NearByPlaces$ParserTask.onPostExecute(NearByPlaces.java:299)
        at android.os.AsyncTask.finish(AsyncTask.java:631)
        at android.os.AsyncTask.access$600(AsyncTask.java:177)
        at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:194)
        at android.app.ActivityThread.main(ActivityThread.java:5455)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:525)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:966)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:733)
        at dalvik.system.NativeStart.main(Native Method)



EXCEPTION: main
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.gol.apps.flickcar/com.gol.apps.flickcar.NavigationActivity}: android.view.InflateException: Binary XML file line #44: Error inflating class fragment
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2416)
            at android.app.ActivityThread.access$600(ActivityThread.java:166)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
            at android.os.Handler.dispatchMessage(Handler.java:107)
            at android.os.Looper.loop(Looper.java:194)
            at android.app.ActivityThread.main(ActivityThread.java:5455)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:966)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:733)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: android.view.InflateException: Binary XML file line #44: Error inflating class fragment
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
            at com.gol.apps.flickcar.fragments.PassengerFragment.onCreateView(PassengerFragment.java:176)
            at android.app.Fragment.performCreateView(Fragment.java:1701)
            at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
            at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1057)
            at android.app.BackStackRecord.run(BackStackRecord.java:694)
            at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1435)
            at android.app.Activity.performStart(Activity.java:5220)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2337)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2416)
            at android.app.ActivityThread.access$600(ActivityThread.java:166)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
            at android.os.Handler.dispatchMessage(Handler.java:107)
            at android.os.Looper.loop(Looper.java:194)
            at android.app.ActivityThread.main(ActivityThread.java:5455)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:966)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:733)
            at dalvik.system.NativeStart.main(Native Method)
     Caused by: java.lang.IllegalArgumentException: Binary XML file line #44: Duplicate id 0x7f0a00b4, tag null, or parent id 0xffffffff with another fragment for com.google.android.gms.maps.MapFragment
            at android.app.Activity.onCreateView(Activity.java:4829)
            at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:680)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
            at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
            at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
            at com.gol.apps.flickcar.fragments.PassengerFragment.onCreateView(PassengerFragment.java:176)
            at android.app.Fragment.performCreateView(Fragment.java:1701)
            at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:885)
            at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1057)
            at android.app.BackStackRecord.run(BackStackRecord.java:694)
            at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1435)
            at android.app.Activity.performStart(Activity.java:5220)
            at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2337)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2416)
            at android.app.ActivityThread.access$600(ActivityThread.java:166)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1379)
            at android.os.Handler.dispatchMessage(Handler.java:107)
            at android.os.Looper.loop(Looper.java:194)
            at android.app.ActivityThread.main(ActivityThread.java:5455)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:525)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:966)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:733)
            at dalvik.system.NativeStart.main(Native Method)

Here is my xml layout for passanger fragment

<fragment
      android:id="@+id/mapPassenger"
      class="com.google.android.gms.maps.MapFragment"
      android:layout_width="match_parent"
      android:layout_height="match_parent"
      tools:layout="@layout/fragment_map" />
  • I am totally new to fragments.. i have also search alot for this but m unable to solve my problem please help me on this thanks
android
android-fragments
asked on Stack Overflow Feb 24, 2015 by Mustanser Iqbal • edited Mar 29, 2019 by Boken

2 Answers

1

Are you trying to inflate a fragment... inside a fragment_layout?

Note: You cannot inflate a layout into a fragment when that layout includes a <fragment>. Nested fragments are only supported when added to a fragment dynamically.

Please see this post.

answered on Stack Overflow Feb 27, 2015 by navalkishoreb • edited May 23, 2017 by Community
0

Simple answer! you check if view is already created in fragment then return else add like this

GoogleMap fragmentMap;

if(fragmentMap==null)

     fragmentMap = ((com.google.android.gms.maps.MapFragment) getActivity().getFragmentManager().
     findFragmentById(R.id.mapfragment)).getMap();
answered on Stack Overflow Jun 3, 2015 by Lalit kumar

User contributions licensed under CC BY-SA 3.0