具有偏移量的LinearSnapHelper

时间:2019-02-01 15:34:43

标签: android android-recyclerview

我将RecyclerView与LinearSnapHelper一起使用。 RecyclerView的项目由TextView和ImageView组成,有时可能不可见。所以,我希望SnapHelper到项目中心到TextView的,忽略了ImageView的。 我尝试添加一个在calculateDistanceToFinalSnap方法抵消,和它的作品,但效果是,当我打电话smoothScrollToPosition,似乎它跳转到“原始”的位置,比向后滚动到我的计算偏移位置。

class CategorySelectorSnapHelper(private val imageViewSize: Int) : LinearSnapHelper() {
override fun calculateDistanceToFinalSnap(layoutManager: RecyclerView.LayoutManager, targetView: View): IntArray? {
    val output = super.calculateDistanceToFinalSnap(layoutManager, targetView)
    output?.set(0, output[0] - imageViewSize)
    return output
}

0 个答案:

没有答案