eltos / SimpleDialogFragments

An Android library to create dialogs with ease and handle user interaction reliably, using fragments and material design.
Apache License 2.0
119 stars 17 forks source link

Dialog crash after screen rotation #27

Closed sf99 closed 6 years ago

sf99 commented 6 years ago

test1 test2

When downloading and running demo/test application SimpleDialogFragmentMaster and selecting dialogs from List and Choices, Date and Time, Inputs and Forms, dialog crash after screen rotation.

  1. Start demo app. SimpleDialogFragmentsMaster MainActivity.
  2. Tap on the DATE button
  3. Rotate device

Test Environment

compileSdkVersion 25, buildToolsVersion '27.0.3'

emulator Nexus 7 API 19 1200x1920 xhdpi Android 4.4.2 real device Lenovo A5500-F Android 4.4.2 800 x 1280 pixels, 16:10 ratio (~189 ppi density)

Stack Trace

FATAL EXCEPTION: main Process: eltos.simpledialogfragments.test, PID: 2678 java.lang.RuntimeException: Unable to start activity ComponentInfo{eltos.simpledialogfragments.test/eltos.simpledialogfragments.MainActivity}: java.lang.IllegalArgumentException: Wrong state class, expecting View State but received class android.widget.ScrollView$SavedState instead. This usually happens when two views of different type have the same id in the same hierarchy. This view's id is id/scrollView. Make sure other views do not use the same id. at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:3738) at android.app.ActivityThread.access$900(ActivityThread.java:135) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1202) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:136) at android.app.ActivityThread.main(ActivityThread.java:5017) 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:779) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) at dalvik.system.NativeStart.main(Native Method) Caused by: java.lang.IllegalArgumentException: Wrong state class, expecting View State but received class android.widget.ScrollView$SavedState instead. This usually happens when two views of different type have the same id in the same hierarchy. This view's id is id/scrollView. Make sure other views do not use the same id. at android.view.View.onRestoreInstanceState(View.java:12823) at android.support.v4.widget.NestedScrollView.onRestoreInstanceState(NestedScrollView.java:1832) at android.view.View.dispatchRestoreInstanceState(View.java:12799) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2637) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2643) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2643) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2643) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2643) at android.view.ViewGroup.dispatchRestoreInstanceState(ViewGroup.java:2643) at android.view.View.restoreHierarchyState(View.java:12777) at com.android.internal.policy.impl.PhoneWindow.restoreHierarchyState(PhoneWindow.java:1744) at android.app.Dialog.onRestoreInstanceState(Dialog.java:428) at android.support.v4.app.DialogFragment.onActivityCreated(DialogFragment.java:407) at android.support.v4.app.Fragment.performActivityCreated(Fragment.java:2198) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1326) at android.support.v4.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1528) at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1595) at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:2888) at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:201) at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:603) at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178) at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1171) at android.app.Activity.performStart(Activity.java:5241)

eltos commented 6 years ago

Please fix your inappropriate issue description!