Advertisement
Guest User

Untitled

a guest
Apr 28th, 2017
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. func scrollViewWillEndDragging(_ scrollView: UIScrollView, withVelocity velocity: CGPoint, targetContentOffset: UnsafeMutablePointer<CGPoint>) {
  2.  
  3. let cellWidth = CGFloat(155)
  4. let cellSpacing = CGFloat(6)
  5.  
  6. let leftOffset = scrollView.contentOffset.x - scrollView.contentInset.left
  7. let cellWidth = cellWidth + cellSpacing
  8. let rawMovement = leftOffset / cellWidth
  9.  
  10. // round down, but if scrolling right, round up
  11. var proposedPage = Int(rawMovement)
  12. if velocity.x == 0 {
  13. proposedPage = Int(round(rawMovement))
  14. } else if velocity.x > 0 {
  15. proposedPage += 1
  16. }
  17.  
  18. let newOffset = cellWidth * CGFloat(proposedPage)
  19. targetContentOffset.pointee = CGPoint(x: newOffset, y: targetContentOffset.pointee.y)
  20. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement