2014-04-07 15 views
6

Dies ist eher eine theoretische Frage.Ist ExecutePendingTransactions() immer notwendig?

Ich habe eine Situation, in der meine App auf einem Fragment Swap mit einem executePendingTransactions() Aufruf abstürzt und funktioniert ohne es gut.

Meine Frage ist was könnte schief gehen, wenn ich nicht executePendingTransactions() anrufen?

Wie ich verstehe, ohne diese Methode ein Tausch nicht sofort passieren kann, obwohl ich das nie erlebt habe.

Antwort

8

Es ist nicht erforderlich, es sei denn, Sie führen etwas aus, das von der Transaktion abhängt. Vom API documentation,

Nach einem FragmentTransaction mit FragmentTransaction.commit() begangen wird, ist es geplant asynchron auf dem Haupt-Thread des Prozesses ausgeführt werden. Wenn Sie solche ausstehenden Operationen sofort ausführen möchten, können Sie diese Funktion aufrufen (nur aus dem Hauptthread). Beachten Sie, dass alle Callbacks und andere verwandte Verhalten von innerhalb dieses Aufrufs erfolgen, also seien Sie vorsichtig, woher dieser aufgerufen wird.

Verwandte Themen