UIScrollViewのオーバースクロールを取得する
ScrollViewのOverScrollにあたるプロパティをiOSではbouncesと呼ぶようです。
スクロールが起きたときのイベントハンドラはdelegateにUIScrollViewDelegateを設定します。
UIScrollViewDelegate Protocol Reference
UIScrollViewDelegateのメソッドのプロパティのScrollViewからcontentOffsetで現在のスクロール位置を取り出す事ができます。
CGPoint currentPoint = [scrollView contentOffset];</span>
currentPoint.xの値はUIScrollViewのコンテンツの表示されている左上のポイントです。
今回取りたかったのは横向スクロールのコンテンツの最終地点(右側)のオーバースクロール。
スクロール中に何かしたかった分けではないのでscrollViewDidEndDraggingを使いましたが
他のメソッドでも大体scrollViewがプロパティで渡されるので同じようにできそうです。
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate { CGPoint currentPoint = [scrollView contentOffset]; CGRect r = [[UIScreen mainScreen] bounds]; float overscrolledX = currentPoint.x - scrollView.contentSize.width + r.size.width; if (overscrolledX > 0 ) { // 右側のオーバースクロールが起きたよ } }