Fragment bereits Hinzugefügt. Unterstützung lib

Da habe ich ein Upgrade meiner App zu verwenden support-lib-rev. 11 und kompiliert SDK 4.2, erhalte ich den folgenden Fehler

java.lang.IllegalStateException: Fragment already added: i{4079e598 #2 id=0x1020002 i}
    at android.support.v4.app.FragmentManagerImpl.addFragment(FragmentManager.java:1159)
    at android.support.v4.app.BackStackRecord.popFromBackStack(BackStackRecord.java:729)
    at android.support.v4.app.FragmentManagerImpl.popBackStackState(FragmentManager.java:1493)
    at android.support.v4.app.FragmentManagerImpl.popBackStackImmediate(FragmentManager.java:477)
    at android.support.v4.app.FragmentActivity.onBackPressed(FragmentActivity.java:174)

Habe ich gelesen über ähnliche Probleme, die auf stackoverflow. Einige von Ihnen vorschlagen, um zu vermeiden, die replace-Methode, die ich nicht verwende. Die Transaktion, die bewirkt, dass der Absturz auf rollback sieht wie folgt aus:

ft.remove(oldFrag).add(newFrag).addToBackStack(null).commit()

Anderen Kommentaren sagen, dies kann auftreten, wenn Sie mithilfe von fragment-übergänge, die nicht abgeschlossen werden kann schnell genug, bevor der Benutzer drückt wieder zurück.
Da verwende ich übergangsanimationen auf die gegebenen Fragmente, könnte dies die Ursache sein. Allerdings, das entfernen der übergang ist nicht eine Wahl, und da diese ausschließlich tritt auf Handys mit 2.3.x und der bug wurde durch ein Upgrade auf lib 11 und sdk 4.2 ich hoffe google wird es fix mit dem nächsten release.

Hat jemand ähnliche Probleme, Informationen darüber, ob dies geplant ist, behoben in Version 4.2.1 oder Unterstützung r12, oder Vorschläge, was ich tun kann, um die Umgehung der Fehler?

Immer die gleiche Sache, aber mit DialogFragment.
Ich bekomme auch mit DialogFragment gelegentlich... ich habe eine Beschwerde eingereicht hat, hier. Aber keine Antwort noch.
habe gleichen Fehler für die Unterstützung der Bibliothek r12. Gepostet Spur zu android-issue-tracker zu.

InformationsquelleAutor phlebas | 2012-12-06

Schreibe einen Kommentar