Android item-callback in recyclerView

must add callback when bind

must clear callback when unbind

 if (null != data.imageColor) {
            videoCard.setPaletteColor(data.imageColor!!)
            videoCard.colorCallback = null
        } else {
            videoCard.setPaletteColor(WidgetImageUtils.defaultPaletteColor)
            videoCard.colorCallback = object : CardViewItemVideo.ColorCallback {
                override fun onColor(color: Int) {
                    data.imageColor = color
                    Log.d("xxxxxx","color2:${data.imageColor}, ${data.seasonId}")
                }
           

MVI

// UI will display this:
data class State(
    val items: List<Int> = emptyList(),
    val inputError: String? = null,
    val currentInput: String? = null,
    val isLoading: Boolean = false
)

// UI will observe those:
sealed class SideEffect {
    class ShowError(val text: String) : SideEffect()
    class ShowToast(val text: String) : SideEffect()
}

// and UI will send those:
sealed class Event {
    data object AddButtonClicked : Event()
    class InputChanged(val input: String) : Event()
    class RemoveItem(val item: Int) : Event()
}