【发布时间】:2016-01-03 03:48:27
【问题描述】:
我正在尝试实现一个滚动视图,该视图在滚动时捕捉到点。
我在这里看到的所有关于在用户结束拖动滚动条“之后”捕捉到某个点的帖子。我想让它在拖动过程中捕捉。
到目前为止,我有这个可以在拖动后停止惯性并且效果很好:
func scrollViewWillEndDragging(scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
targetContentOffset.memory = scrollView.contentOffset
}
我试过了,但没有按预期工作:
var scrollSnapHeight : CGFloat = myScrollView.contentSize.height/10
scrollViewDidScroll:
func scrollViewDidScroll(scrollView: UIScrollView) {
let remainder : CGFloat = scrollView.contentOffset.y % scrollSnapHeight
var scrollPoint : CGPoint = scrollView.contentOffset
if remainder != 0 && scrollView.dragging
{
if self.lastOffset > scrollView.contentOffset.y //Scrolling Down
{
scrollPoint.y += (scrollSnapHeight - remainder)
NSLog("scrollDown")
}
else //Scrolling Up
{
scrollPoint.y -= (scrollSnapHeight - remainder)
}
scrollView .setContentOffset(scrollPoint, animated: true)
}
self.lastOffset = scrollView.contentOffset.y;
}
【问题讨论】:
标签: ios swift uiscrollview paging scroll-snap-points