Someone please?

On Sunday, June 3, 2012 10:50:33 AM UTC+3, Alexandros wrote:
>
> Hello everyone,
>
> Some time ago, I updated my application to use the support v4 library in 
> order to use the ViewPager control. The initial version of the application 
> used the FragmentPagerAdapter, however, because the application has a lot 
> of pages it seemed wise to use the FragmentStatePagerAdapter, since I was 
> getting OutOfMemory reports. But now, I am getting reports of another 
> error. The error is:  java.lang.IllegalStateException: Fragment 
> <MyFragment> is not currently in the FragmentManager.
> I did some searching on the Internet, but nothing solid came up. The 
> problem seems to be happening when the activity is trying to pause and the 
> onSaveInstanceState method is called. After I did some investigation on the 
> support v4 library my self, I noticed that this exception is thrown in the 
> FragmentManager.putFragment() when the member of the fragment mIndex is 
> less than 0, but I cannot figure out when mIndex becomes less than 0 and 
> why this is not handled correctly.
>
> *I would like to point out that I do not have an MOR (method of 
> reproduction) for this error.*
>
> Here is the call stack:
> java.lang.RuntimeException: Unable to pause activity  <my activity with 
> the ViewPager> java.lang.IllegalStateException: Fragment <MyFragment> is 
> not currently in the FragmentManager
> at 
> android.app.ActivityThread.performPauseActivity(ActivityThread.java:3438)
> at 
> android.app.ActivityThread.performPauseActivity(ActivityThread.java:3395)
> at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3378)
> at android.app.ActivityThread.access$2700(ActivityThread.java:129)
> at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2124)
> at android.os.Handler.dispatchMessage(Handler.java:99)
> at android.os.Looper.loop(Looper.java:143)
> at android.app.ActivityThread.main(ActivityThread.java:4717)
> at java.lang.reflect.Method.invokeNative(Native Method)
> at java.lang.reflect.Method.invoke(Method.java:521)
> at 
> com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
> at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
> at dalvik.system.NativeStart.main(Native Method)
> Caused by: java.lang.IllegalStateException: Fragment <MyFragment> is not 
> currently in the FragmentManager
> at 
> android.support.v4.app.FragmentManagerImpl.putFragment(FragmentManager.java:516)
> at 
> android.support.v4.app.FragmentStatePagerAdapter.saveState(FragmentStatePagerAdapter.java:185)
> at 
> android.support.v4.view.ViewPager.onSaveInstanceState(ViewPager.java:881)
> at android.view.View.dispatchSaveInstanceState(View.java:6098)
> at android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1323)
> at android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1327)
> at android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1327)
> at android.view.ViewGroup.dispatchSaveInstanceState(ViewGroup.java:1327)
> at android.view.View.saveHierarchyState(View.java:6081)
> at 
> com.android.internal.policy.impl.PhoneWindow.saveHierarchyState(PhoneWindow.java:1573)
> at android.app.Activity.onSaveInstanceState(Activity.java:1094)
> at 
> android.support.v4.app.FragmentActivity.onSaveInstanceState(FragmentActivity.java:480)
>  at <my activity with the 
> ViewPager>.onSaveInstanceState(ContentActivity.java:288)
> at android.app.Activity.performSaveInstanceState(Activity.java:1044)
> at 
> android.app.Instrumentation.callActivityOnSaveInstanceState(Instrumentation.java:1180)
> at 
> android.app.ActivityThread.performPauseActivity(ActivityThread.java:3420)
>
> Thanks in advanced.
>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to