Ich benutze greenrobot EventBus-Bibliothek, um Daten zwischen zwei Fragmente in meiner Android App zu senden, und ich möchte wissen, was ist der Unterschied zwischen register(Object b)
Methode und registerSticky(Object object)
Methode?EventBus, registrieren und registrierenSticky-Methode
14
A
Antwort
42
EventBus
können Sie Ereignisse, die "sticky" und damit EventBus
Ereignisse Ereignisse, die "bleiben auf den Eventbus" für zukünftigen Zugriff.
Wenn Sie ein normaleevent
posten, wenn es keine subscribers
zur Zeit des Sendens registriert, diese event
wird verworfen.
Sie können ein stickyevent
obwohl schreiben, auch wenn es keine subscribers
sind, dass in dem Moment zu empfangen, und es wird nicht verworfen werden (es sei denn, eine andere klebrige event
in Zukunft geschrieben ist). Wenn ein subscriber
registriert mit registerSticky
die Lieferung der letzten Sticky event
wird auch ausgelöst.
Kann ich 'resgisterSticky' anstelle von' register' jederzeit verwenden? – karoluch
Obwohl 'registerSticky' sich wie reguläres Register verhält (und die Lieferung des letzten' sticky' 'Ereignisses auslöst), sollte es vermieden werden, solange Sie keinen ernsthaften Fall für die Verwendung von' sticky event' sehen. –
@blipinsk Why vermeiden? Bitte ausführlicher ... Kann ich die beiden registrieren und registrierenSticky/post und postSticky? – powder366