Bigkoo / Android-PickerView

This is a picker view for android , support linkage effect, timepicker and optionspicker.(时间选择器、省市区三级联动)
Apache License 2.0
13.42k stars 3.44k forks source link

[fix] 修复在数据非常少的时候的滑动卡顿 #987

Open taichushouwang opened 3 years ago

taichushouwang commented 3 years ago

作者之前给滑动到边界时做了减速的效果,但是在数据只有两三条的时候,这个减速效果就变成了卡顿。参考androidWheelView的实现,修改了实现方案,在数据只有两三条的时候,不会出现卡顿。

hjzlzh123 commented 2 years ago

请问这个代码什么时候能更新到库中呢,现在使用依赖的情况无法修改源码

taichushouwang commented 2 years ago

请问这个代码什么时候能更新到库中呢,现在使用依赖的情况无法修改源码

@hjzlzh123 估计作者应该没有在维护代码了,应该不会更新到库中了,只能自己拷贝源码使用

android-1995 commented 2 years ago

有Bug啊铁汁,有几率会导致最后多了一行,我用自定义粗字体

taichushouwang commented 2 years ago

有Bug啊铁汁,有几率会导致最后多了一行,我用自定义粗字体

@android-1995 你是在数据多的时候多一行,还是只有两三行的时候,会多一行?

android-1995 commented 2 years ago

有Bug啊铁汁,有几率会导致最后多了一行,我用自定义粗字体

@android-1995 你是在数据多的时候多一行,还是只有两三行的时候,会多一行?

省市区的那个数据,加上粗体的第三方字体,省的最后一行会多出一个空白行(就是显示有问题,联动没啥问题)

android-1995 commented 2 years ago

image

taichushouwang commented 2 years ago

@android-1995 你看一下是不是数据源设置错了,或者是WheelView里面的itemsVisible有问题,因为我这个修改只是改变滚动事件的逻辑,并没有修改到绘制相关的代码。这个绘制的需要你自己研究一下

android-1995 commented 2 years ago

@android-1995 你看一下是不是数据源设置错了,或者是WheelView里面的itemsVisible有问题,因为我这个修改只是改变滚动事件的逻辑,并没有修改到绘制相关的代码。这个绘制的需要你自己研究一下

revert 你的这个提交后就正常了😂 等会有空我再调试下回复你哈

android-1995 commented 2 years ago

😅抱歉,在demo上无法复现

taichushouwang commented 2 years ago

@android-1995 你在你的项目中,如果把“粗体的第三方字体”去掉的话,会有问题吗?因为我在我的项目中也没有遇到过这种问题。 另外,你可以对比一下有我的提交和没我的提交adapter.getItemsCount()是不是一样的。还有就是onTouchEvent,方法里面的topbottom的值。

android-1995 commented 2 years ago

@android-1995 你在你的项目中,如果把“粗体的第三方字体”去掉的话,会有问题吗?因为我在我的项目中也没有遇到过这种问题。 另外,你可以对比一下有我的提交和没我的提交adapter.getItemsCount()是不是一样的。还有就是onTouchEvent,方法里面的topbottom的值。

我的项目里去掉粗体的第三方字体也正常了。😶

android-1995 commented 2 years ago

image getItemsCount没啥问题,估计是onTouchEvent里面的isIgnore去掉后导致的视图刷新?我猜的 哈哈

android-1995 commented 2 years ago

image

android-1995 commented 2 years ago

大概是这个原因吧 https://github.com/Bigkoo/Android-PickerView/commit/cb7a68d98e49909b2b386be69f34b99b472897b8

taichushouwang commented 2 years ago

@android-1995 兄弟,你后面还有没有对比一下你的代码和demo的区别,有没有什么办法可以在demo上复现?我前段时间太忙了,没时间研究,现在想复现场景看看

😅抱歉,在demo上无法复现