J'utilisais la méthode commit dans mon projet qui l'a construit avec des fragments.
Quoi qu'il en soit, parfois j'obtenais l'erreur IllegalStateException: Can not perform this action after onSaveInstanceState
Et je ne pouvais pas trouver de bonne solution à ce sujet, mais juste cette méthode commitAllowingStateLoss()
. J'ai changé la fonction de validation en commitAllowingStateLoss()
mais je ne l'ai pas utilisée longtemps pour tester, alors cette fonction peut-elle m'aider? Et la question principale, quelle est la différence entre commit()
et commitAllowingStateLoss()
?
Il n'y a qu'une seule différence entre commit()
et commitAllowingStateLoss()
: cette dernière ne lève pas d'exception en cas de perte d'état. En dehors de cela, ils ont un comportement identique.
Voir mon article de blog sur ce sujet pour plus d'informations.