I hatte 2 Fragment A und B, in Fragmente B I ein Objekt löschen über die Transaktion dann execut I getActivity().getSupportFragmentManager().popBackStack();
an das Fragment zurück A, nachdem das Objekt I debug Löschen und ich fand, dass das Objekt korrekt gelöscht, aber wenn ich zu Fragment zurückkehren A ich es gefunden, es ist seltsam!Realm behält ein gelöschte Objekt
dies ist mein Code in meinem Fragment A
realm.executeTransactionAsync(new Realm.Transaction() {
@Override
public void execute(@NonNull Realm realm) {
Infraction infraction = realm.where(Infraction.class).equalTo("id",id_new_inf).findFirst();
if(infraction != null)
infraction.deleteFromRealm();
}
});
getActivity().getSupportFragmentManager().popBackStack();
Warum wird das Objekt nicht gelöscht?
in Fragment A, ich habe nicht etwas Besonderes, es ist nur eine Anfrage in onCreateView
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
final View v = inflater.inflate(R.layout.list_infractions, container, false);
infractions = realm.where(Infraction.class).findAll();
}
auch den Code-Fragment A. Post tun, weil es hängt auch von wie manipulieren Sie Daten in Fragment A –
Werden Elemente in Fragment A neu geladen? –
bitte lesen https://realm.io/docs/java/latest/#notifications und https://academy.realm.io/posts/threading-deep-dive/ – beeender