Slide 15
Slide 15 text
class RecycledViewPoolFactory {
private val viewPools = SparseArray()
private fun create(lifecycleOwner: LifecycleOwner): RecycledViewPool {
viewPools.get(lifecycleOwner.hashCode())?.let { return it }
val viewPool = RecycledViewPool()
viewPools.put(lifecycleOwner.hashCode(), viewPool)
lifecycleOwner.lifecycle
.addObserver(LifecycleEventObserver { _, event ->
if (event == Lifecycle.Event.ON_DESTROY) {
viewPool.clear()
viewPools.remove(lifecycleOwner.hashCode())
}
})
return viewPool
}
}
3FDZDMFE7JFX1PPM'BDUPSZ