photo / mobile-android

Trovebox mobile application for Android
Apache License 2.0
120 stars 64 forks source link

NavigationHandlerFragment: App crash after updating to ADT 22 and latest support lib #437

Closed httpdispatch closed 11 years ago

httpdispatch commented 11 years ago
05-16 11:03:48.263: E/AndroidRuntime(10406): java.lang.IllegalStateException: The application's PagerAdapter changed the adapter's contents without calling PagerAdapter#notifyDataSetChanged! Expected adapter item count: 6, found: 7 Pager id: com.trovebox.android.app:id/pager Pager class: class android.support.v4.view.ViewPager Problematic adapter: class com.trovebox.android.app.NavigationHandlerFragment$FragmentAdapter
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.support.v4.view.ViewPager.populate(ViewPager.java:959)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.support.v4.view.ViewPager.populate(ViewPager.java:911)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.support.v4.view.ViewPager.onMeasure(ViewPager.java:1432)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at org.holoeverywhere.slider.SliderView.attachView(SliderView.java:327)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at org.holoeverywhere.slider.SliderView.onMeasure(SliderView.java:655)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at org.holoeverywhere.internal.WindowDecorView.onMeasure(WindowDecorView.java:134)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at org.holoeverywhere.widget.LinearLayout.measureVertical(LinearLayout.java:1021)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at org.holoeverywhere.widget.LinearLayout.onMeasure(LinearLayout.java:1112)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:4698)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.widget.FrameLayout.onMeasure(FrameLayout.java:293)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at com.android.internal.policy.impl.PhoneWindow$DecorView.onMeasure(PhoneWindow.java:2092)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.View.measure(View.java:12727)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1068)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.view.ViewRootImpl.handleMessage(ViewRootImpl.java:2446)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.os.Handler.dispatchMessage(Handler.java:99)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.os.Looper.loop(Looper.java:137)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at android.app.ActivityThread.main(ActivityThread.java:4424)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at java.lang.reflect.Method.invokeNative(Native Method)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at java.lang.reflect.Method.invoke(Method.java:511)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
05-16 11:03:48.263: E/AndroidRuntime(10406):    at dalvik.system.NativeStart.main(Native Method)
daimajia commented 11 years ago

This may help : http://stackoverflow.com/questions/16756131/fragmentstatepageradapter-stopped-working-after-updating-to-adt-22

httpdispatch commented 11 years ago

@xuanqinanhai thanks this is already fixed in this place, however it may occur in PhotoDetails in some rare cases. I've checked every place where we modify data model and notifyDataSetChanged() is present everywhere. But maybe i've missed something.