Merge pull request #30 from TouchInstinct/feature/recycler-onchange-observer
Added recycler onChange observer with extension
This commit is contained in:
commit
835e54b33b
|
|
@ -0,0 +1,23 @@
|
|||
package ru.touchin.adapters
|
||||
|
||||
import androidx.recyclerview.widget.RecyclerView
|
||||
|
||||
abstract class SimpleDataObserver : RecyclerView.AdapterDataObserver() {
|
||||
|
||||
abstract fun onChange()
|
||||
|
||||
override fun onItemRangeChanged(positionStart: Int, itemCount: Int) = onChange()
|
||||
|
||||
override fun onItemRangeInserted(positionStart: Int, itemCount: Int) = onChange()
|
||||
|
||||
override fun onItemRangeRemoved(positionStart: Int, itemCount: Int) = onChange()
|
||||
|
||||
override fun onItemRangeMoved(fromPosition: Int, toPosition: Int, itemCount: Int) = onChange()
|
||||
|
||||
}
|
||||
|
||||
fun RecyclerView.Adapter<out RecyclerView.ViewHolder>.onDataUpdatedAndDrawn(onChanged: () -> Unit) = registerAdapterDataObserver(
|
||||
object : SimpleDataObserver() {
|
||||
override fun onChange() = onChanged()
|
||||
}
|
||||
)
|
||||
Loading…
Reference in New Issue