效果图
- 第一个: 0
- 最后一个: 10
效果图二
- 第一个: 22
- 最后一个: 32
实现:
在 override fun onCreate方法中
recyclerView?.setOnScrollListener(object : RecyclerView.OnScrollListener() {
override fun onScrollStateChanged(recyclerView: RecyclerView, newState: Int) {
super.onScrollStateChanged(recyclerView, newState)
val layoutManager: RecyclerView.LayoutManager? = recyclerView.layoutManager
val linearManager = layoutManager as LinearLayoutManager
//获取最后一个可见view的位置
val lastItemPosition = linearManager.findLastVisibleItemPosition()
//获取第一个可见view的位置
val firstItemPosition = linearManager.findFirstVisibleItemPosition()
e("最后一个", lastItemPosition.toString())
e("第一个", firstItemPosition.toString())
}
})
- 以上是整个流程