2015-01-20 17 views
14

Android uygulamasında iki fragman arasında veri göndermek için greenrobot EventBus kitaplığını kullanıyorum ve register(Object b) yöntemi ve registerSticky(Object object) yöntemi arasındaki fark nedir?EventBus, kayıt ve registerSticky yöntemi

cevap

42

EventBus, "yapışkan" olan etkinlikleri yayınlamanıza olanak tanır ve bu sayede EventBus, gelecekteki erişim için "eventbus'a yapışan" olayları anlar. Eğer yayınlarsanız

bir normal gönderme anında kayıtlı hiçbir subscribers vardırevent, bu event atılacak. (Ileride yayınlanmıştır başka yapışkan event olmadığı sürece)

Sen şu anda bu almak için hiçbir subscribers olmasa bile olsa bir yapışkanevent gönderebilir ve bu iptal olmayacak. subscriber, registerSticky ile son yapışkan event iletimini de tetiklediğinde de tetiklenir.

+0

Tüm zamanlar kayıt olmak yerine 'resgisterSticky' kullanabilir miyim? – karoluch

+1

"RegisterSticky" düzenli bir kayıt gibi davranıyor (ve son "yapışkan" olayının iletimini tetikliyor) "Yapışkan olayın kullanımı için ciddi bir durum görmediğiniz sürece bundan kaçınılması gerektiğini düşünüyorum. –

+1

@blipinsk Neden önlemek? Lütfen detaylandırın ... İki kayıt ve registerSticky/post ve postSticky'yi karıştırabilir miyim? – powder366

İlgili konular