1

私はを使用してUIRotationGestureRecognizerおり、ターゲットメソッドに次のコードがあります:

if (gestureRecognizer.state == UIGestureRecognizerStateBegan) {
    UIView *piece = gestureRecognizer.view;
    CGPoint locationInView = [gestureRecognizer locationInView:piece];
    CGPoint locationInSuperview = [gestureRecognizer locationInView:piece.superview];

    piece.layer.anchorPoint = CGPointMake(locationInView.x / piece.bounds.size.width, locationInView.y / piece.bounds.size.height);
    piece.center = locationInSuperview;
}

locationInView:しかし、画面に2本の指が触れているはずなので、戻り値がどの値を示しているのかよくわかりません。

4

2 に答える 2

2

ドキュメントを読むことは良い考えです:

http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIGestureRecognizer_Class/Reference/Reference.html

マルチタッチの「重心」です。

于 2013-03-05T02:05:57.680 に答える
2

このlocationInView:メソッドは、両方のタッチの中心点を返します。2つの個別のタッチの位置を知りたい場合は、を使用しますlocationOfTouch:inView:

于 2013-03-05T01:58:06.690 に答える