我有一个问题UIScrollView
,不确定它是否是一个错误,但是当我UIScrollView
用它delegate
和一个可缩放/可平移的图像实现 a 时,它就会发生。
首先,当我平移图像时,它可能contentOffset
是一个非整数值 (.5)。可以肯定zoomScales
的是,当我将图像一直平移到边缘时,由于这个原因,它在到达边缘时会下降半个像素。
这是一件很小的事情,但在我的应用程序中,我必须在屏幕上拖动对象,如果我将对象拖动到角落,你会注意到它。
我已经实现了以下内容来尝试纠正问题并使其contentOffset
成为一个完整的值:
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset
{
if (targetContentOffset->x != ceilf(targetContentOffset->x))
{
if (velocity.x > 0)
{
targetContentOffset->x = ceilf(targetContentOffset->x);
}
else
{
targetContentOffset->x = floorf(targetContentOffset->x);
}
}
if (targetContentOffset->y != ceilf(targetContentOffset->y))
{
if (velocity.y > 0)
{
targetContentOffset->y = ceilf(targetContentOffset->y);
}
else
{
targetContentOffset->y = floorf(targetContentOffset->y);
}
}
}
但是,它似乎不起作用,因为我的与该物业targetContentOffset
完全不同。contentOffset
有没有人a)为什么会发生这个错误或b)如何使用上述委托方法或其他方式修复它?