FragmentStatePagerAdapter IllegalStateException: <MyFragment> is not currently in the FragmentManagerの複製のように聞こえます が、彼の解決策は私の場合には関係ありません。
めったに次のクラッシュが発生しません。
java.lang.RuntimeException: アクティビティ {MyActivity} を一時停止できません:
...
原因: java.lang.IllegalStateException: Fragment MyFragment {40648258 id=0x7f070051} は現在、android.support.v4.app.FragmentManagerImpl.putFragment(MT:516) の FragmentManager にありません android.support.v4.app.FragmentStatePagerAdapter android.support.v4.view.ViewPager.onSaveInstanceState(MT:881) の .saveState(MT:185)
...
android.view.View.saveHierarchyState(View.java:6238) で com.android.internal.policy.impl.PhoneWindow.saveHierarchyState(PhoneWindow.java:1522) で android.app.Activity.onSaveInstanceState(Activity.java:1138) ) android.support.v4.app.FragmentActivity.onSaveInstanceState(MT:480) で MyActivity.onSaveInstanceState(MT:336)
これは私が理解できない奇妙なコードのようですFragmentStatePagerAdapter
:
for (int i=0; i<mFragments.size(); i++) {
Fragment f = mFragments.get(i);
if (f != null) {
if (state == null) {
state = new Bundle();
}
String key = "f" + i;
mFragmentManager.putFragment(state, key, f);
}
}
アダプタは myFragment
から取得しているようですmFragments
が、その状態を に追加できませんFragmentManager
。
テストデバイスでこれを再現する方法を見つけることができませんでした.一部のユーザーからのみこれを受け取りました.
サポート パッケージ v4 を使用しています。
何か助けはありますか?ありがとう。