Interop¶
Circuit can interop anywhere that Compose can interop. This includes common cases like Android
Views
, RxJava, Kotlin Flow
, and more.
Presenter
¶
Lean on first-party interop-APIs where possible! See examples of interop with different libraries in the :samples:interop
project.
UI
¶
Ui
-> View
¶
Just embed the Circuit in a ComposeView
like any other Compose UI.
View
-> Ui
¶
You can wrap your view in an AndroidView
in a custom Ui
implementation.
class ExistingCustomViewUi : Ui<State> {
@Composable
fun Content(state: State, modifier: Modifier = Modifier) {
AndroidView(
modifier = ...
factory = { context ->
ExistingCustomView(context)
},
update = { view ->
view.setState(state)
view.setOnClickListener { state.eventSink(Event.Click) }
}
}
}