ScrollView.contentOffset.y不能移动小于0.333像素

时间:2019-06-17 18:38:46

标签: ios swift scrollview contentoffset

我正在尝试创建一个提词提示器。基本上是自动滚动scrollView

每X次我将scrollView.contentOffset.y移动1点/像素。

我为用户提供了降低动画速度的选项,我想通过减少点数来实现,而不是通过增加每次像素移动所花费的时间来实现。

但是我不能将磅值减小到小于0.3333。要求移动0.2时,四舍五入到0.333,将0.1舍入到0,所以我得到0。为什么会这样,我该如何更改?

1 个答案:

答案 0 :(得分:0)

偏移量以磅为单位。在3x设备上,单个像素为0.3333点。显然,您不能滚动部分像素。

一个有效解决此问题的解决方案是让您保留自己的偏移量值,并以较小的值递增。然后使用您自己的运行值更新滚动视图的偏移量。不要尝试在滚动视图的偏移量中添加0.1或0.2之类的内容。增加您自己的值并更新滚动视图的偏移量。当然,滚动视图的实际移动不会像您的小更新那样精细,但是总体滚动会更慢。