Android - Xrecyclerview 下拉更新跟viewpager 滾動太敏感

本篇使用

implementation 'com.jcodecraeer:xrecyclerview:1.6.0'.

如題viewpager2包xrecyclerview ,下拉更新時會很容易出發到viewpager的scroll

列表是有處理,所以並沒有這衝突問題,但是下拉更新的部分就沒有了

所以必須要取得header view,然後去監聽 

addOnLayoutChangeListener

當bottom  > 0 就代表在下拉中,bottom =0就代表回到原位了

然後再去控制viewpager的scroll

jobs_recyclerview.defaultRefreshHeaderView.addOnLayoutChangeListener { v, left, top, right, bottom, oldLeft, oldTop, oldRight, oldBottom ->
    jobsViewModel.viewpagerScrollEndalbe.value = bottom <= 0
}
viewpagerScrollEndalbe.observe(this@JobsListFragment, Observer {
    jobs_list_viewpager.isUserInputEnabled = it
})