private fun setFixHideForRecyclerView(
recyclerView: RecyclerView?,
view: View?
) {
if (null != recyclerView && null != view) {
val height: Int = view.height
val rect = Rect()
view.getLocalVisibleRect(rect)
if (rect.top > 0 && rect.left == 0 && rect.bottom == height) {
//上面被遮挡
val offset = rect.top
recyclerView.smoothScrollBy(0, -offset)
} else if (rect.top == 0 && rect.left == 0 && rect.bottom < height) {
//下面被遮挡
val offset = height - rect.bottom
recyclerView.smoothScrollBy(0, offset)
}
}
}
RecyclerView的Item中的View,被屏幕遮挡,没显示完全,调用此方法就能滑到展示完全
该代码片段定义了一个私有函数,用于检查RecyclerView中的视图是否被遮挡并进行平滑滚动调整。当视图顶部或底部被遮挡时,函数计算偏移量并平滑滚动RecyclerView以显示完整视图。
摘要由CSDN通过智能技术生成