当片段恢复时,我想使用 EpoxyRecyclerView 中的 CarouselModel_ 重新触发 onVisibilityStateChanged。
override fun onResume() {
epoxyVisibilityTracker.clearVisibilityStates()
epoxyVisibilityTracker.requestVisibilityCheck()
super.onResume()
}
clearVisibilityStates 和 requestVisibilityCheck 有助于重新触发除 CarouselModel_ 内的项目之外的所有组件的 onVisibilityStateChanged 事件
我想重新触发 CustomEproxyModel_的 onVisibilityStateChanged 事件
val customModels = ArrayList<EpoxyModel<*>>()
customModels.add(
CustomEproxyModel_()
.id(viewId)
.onVisibilityStateChanged { _, _, visibilityState ->
if(visibilityState == VisibilityState.VISIBLE) {
Log.d("Eproxy", "CustomEproxyModel_ visible")
}
}
)
CarouselModel_()
.id(viewId)
.spanSizeOverride { totalSpanCount, _, _ ->
totalSpanCount
}.models(customModels)
分离和附加visibilityTracker对我来说也不适用。
override fun onPause() {
// Detach the visibility tracker from the RecyclerView
visibilityTracker.detach(epoxyRecyclerView)
}
override fun onResume() {
super.onResume()
// Attach the visibility tracker to the RecyclerView
visibilityTracker.attach(epoxyRecyclerView)
}
https://litslink.com/app-cost-calculator。他们是这方面非常酷的专家