Bottombar: [BUG] Exception when activity re-create (on rotate)

Created on 3 Sep 2016  路  4Comments  路  Source: roughike/BottomBar

I have following exception when my activity rotated. I put BottomBar inside a Fragment.

Thank you for your help.

09-03 23:37:59.425 19425-19425/[REMOVED] E/AndroidRuntime: FATAL EXCEPTION: main
           Process: [REMOVED], PID: 19425
           java.lang.RuntimeException: Unable to start activity ComponentInfo{[REMOVED]/[REMOVED].activities.MainActivity}: java.lang.IllegalArgumentException: Wrong state class, expecting View State but received class android.os.Bundle instead. This usually happens when two views of different type have the same id in the same hierarchy. This view's id is id/lm_bottom_bar_recents. Make sure other views do not use the same id.
           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2338)
           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)
           at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3930)
           at android.app.ActivityThread.access$900(ActivityThread.java:151)
           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1327)
           at android.os.Handler.dispatchMessage(Handler.java:110)
           at android.os.Looper.loop(Looper.java:193)
           at android.app.ActivityThread.main(ActivityThread.java:5299)
           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:829)
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)
           at dalvik.system.NativeStart.main(Native Method)
          Caused by: java.lang.IllegalArgumentException: Wrong state class, expecting View State but received class android.os.Bundle instead. This usually happens when two views of different type have the same id in the same hierarchy. This view's id is id/lm_bottom_bar_recents. Make sure other views do not use the same id.
           at android.view.View.onRestoreInstanceState(View.java:12998)
           at com.roughike.bottombar.BottomBarTab.onRestoreInstanceState(BottomBarTab.java:555)
           at android.view.View.dispatchRestoreInstanceState(View.java:12974)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2756)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2762)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2762)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2762)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2762)
           at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2762)
           at android.view.View.restoreHierarchyState(View.java:12952)
           at android.support.v4.app.Fragment.restoreViewState(Fragment.java:477)
           at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1135)
           at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1290)
           at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1272)
           at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:2149)
           at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:201)
           at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:600)
           at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178)
           at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1174)
           at android.app.Activity.performStart(Activity.java:5274)
           at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2311)
           at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2390)聽
           at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3930)聽
           at android.app.ActivityThread.access$900(ActivityThread.java:151)聽
           at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1327)聽
           at android.os.Handler.dispatchMessage(Handler.java:110)聽
           at android.os.Looper.loop(Looper.java:193)聽
           at android.app.ActivityThread.main(ActivityThread.java:5299)聽
           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:829)聽
           at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:645)聽
           at dalvik.system.NativeStart.main(Native Method)聽

Fragment layout file:

<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".fragments.LastMileFragment">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical">

        <android.support.v4.view.ViewPager
            android:id="@+id/container"
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            app:layout_behavior="@string/appbar_scrolling_view_behavior" />

        <com.roughike.bottombar.BottomBar
            android:id="@+id/bottomBar"
            android:layout_width="match_parent"
            android:layout_height="60dp"
            android:background="@color/white"
            app:bb_showShadow="false"
            app:bb_tabXmlResource="@xml/last_mile_bottombar_tabs" />
    </LinearLayout>
</android.support.design.widget.CoordinatorLayout>

Most helpful comment

Hi,

Same bug here, it seems that it will be fixed in 2.0.3 version (see #445) but the release is not published yet. @roughike any idea when it will be available ?

Thanks

All 4 comments

Caused by java.lang.IllegalArgumentException: Wrong state class, expecting View State but received class android.os.Bundle instead. This usually happens when two views of different type have the same id in the same hierarchy. This view's id is id/tab_notifications. Make sure other views do not use the same id.
at android.view.View.onRestoreInstanceState(View.java:12036)
at com.roughike.bottombar.BottomBarTab.onRestoreInstanceState(BottomBarTab.java:555)
at android.view.View.dispatchRestoreInstanceState(View.java:12012)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2645)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2651)
at android.view.View.restoreHierarchyState(View.java:11990)
at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1826)
at android.app.Activity.onRestoreInstanceState(Activity.java:949)
at android.app.Activity.performRestoreInstanceState(Activity.java:921)
at android.app.Instrumentation.callActivityOnRestoreInstanceState(Instrumentation.java:1145)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2070)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)
at android.app.ActivityThread.access$700(ActivityThread.java:134)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4867)
at java.lang.reflect.Method.invokeNative(Method.java)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
at dalvik.system.NativeStart.main(NativeStart.java)

MANIFEST
android:name=".view.activity.MainActivity"
android:label="@string/app_name"
android:launchMode="singleTop"
android:screenOrientation="portrait" />

Hi,

Same bug here, it seems that it will be fixed in 2.0.3 version (see #445) but the release is not published yet. @roughike any idea when it will be available ?

Thanks

ditto.. any ETA for 2.0.3?

Was this page helpful?
0 / 5 - 0 ratings

Related issues

yerenutku picture yerenutku  路  4Comments

Hiike picture Hiike  路  4Comments

rosenpin picture rosenpin  路  3Comments

LiuDeng picture LiuDeng  路  5Comments

zhangzhzh picture zhangzhzh  路  7Comments