pull/32/head
Administrator 5 years ago
parent 9dfce08b58
commit 64dc125897
  1. 46
      app/src/main/java/io/legado/app/utils/EventBusKt.kt

@ -13,16 +13,10 @@ inline fun <reified EVENT> postEvent(tag: String, event: EVENT) {
LiveEventBus.get().with(tag, EVENT::class.java).post(event) LiveEventBus.get().with(tag, EVENT::class.java).post(event)
} }
inline fun <reified EVENT> AppCompatActivity.observeEvent(tag: String, crossinline observer: (EVENT) -> Unit) { inline fun <reified EVENT> AppCompatActivity.observeEvent(
eventObservable<EVENT>(tag).observe(this, Observer { vararg tags: String,
observer(it) noinline observer: (EVENT) -> Unit
}) ) {
}
/**
* 只能观察相同类型的事件可用EventMessage
*/
inline fun <reified EVENT> AppCompatActivity.observeEvents(vararg tags: String, crossinline observer: (EVENT) -> Unit) {
val o = Observer<EVENT> { val o = Observer<EVENT> {
observer(it) observer(it)
} }
@ -31,15 +25,10 @@ inline fun <reified EVENT> AppCompatActivity.observeEvents(vararg tags: String,
} }
} }
inline fun <reified EVENT> AppCompatActivity.observeEventSticky(tag: String, crossinline observer: (EVENT) -> Unit) {
eventObservable<EVENT>(tag).observeSticky(this, Observer {
observer(it)
})
}
inline fun <reified EVENT> AppCompatActivity.observeEventsSticky( inline fun <reified EVENT> AppCompatActivity.observeEventSticky(
vararg tags: String, vararg tags: String,
crossinline observer: (EVENT) -> Unit noinline observer: (EVENT) -> Unit
) { ) {
val o = Observer<EVENT> { val o = Observer<EVENT> {
observer(it) observer(it)
@ -49,13 +38,10 @@ inline fun <reified EVENT> AppCompatActivity.observeEventsSticky(
} }
} }
inline fun <reified EVENT> Fragment.observeEvent(tag: String, crossinline observer: (EVENT) -> Unit) { inline fun <reified EVENT> Fragment.observeEvent(
eventObservable<EVENT>(tag).observe(this, Observer { vararg tags: String,
observer(it) noinline observer: (EVENT) -> Unit
}) ) {
}
inline fun <reified EVENT> Fragment.observeEvents(vararg tags: String, crossinline observer: (EVENT) -> Unit) {
val o = Observer<EVENT> { val o = Observer<EVENT> {
observer(it) observer(it)
} }
@ -64,13 +50,10 @@ inline fun <reified EVENT> Fragment.observeEvents(vararg tags: String, crossinli
} }
} }
inline fun <reified EVENT> Fragment.observeEventSticky(tag: String, crossinline observer: (EVENT) -> Unit) { inline fun <reified EVENT> Fragment.observeEventSticky(
eventObservable<EVENT>(tag).observeSticky(this, Observer { vararg tags: String,
observer(it) noinline observer: (EVENT) -> Unit
}) ) {
}
inline fun <reified EVENT> Fragment.observeEventsSticky(vararg tags: String, crossinline observer: (EVENT) -> Unit) {
val o = Observer<EVENT> { val o = Observer<EVENT> {
observer(it) observer(it)
} }
@ -78,3 +61,4 @@ inline fun <reified EVENT> Fragment.observeEventsSticky(vararg tags: String, cro
eventObservable<EVENT>(it).observeSticky(this, o) eventObservable<EVENT>(it).observeSticky(this, o)
} }
} }

Loading…
Cancel
Save