0

iOS 4では、-touchesBegan:withEvent:、-touchesMoved:withEvent:、-touchesEnded:withEvent:、-touchesCancelled:withEvent:が、タッチを処理するビューに実装できる唯一のメソッドであると信じていました。

しかし今、私がこれらのメソッドを次のようにオーバーライドすると:

- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {
    // not calling super. Doing nothing.
}

UIScrollViewサブクラスでは、引き続きスクロールします。彼らはどうやってそれをしましたか?

4

1 に答える 1

2

UIScrollViewは、UIPanGestureRecognizerを使用してスクロールします。UIKitは、touchesBegan:withEvent:および関連するメソッドとは別に、プライベートメカニズムを介してジェスチャレコグナイザーにイベントを送信します。

于 2012-05-11T15:35:06.727 に答える