UIPinchGestureRecognizer
水平スケールと垂直スケールの両方が必要なため、'sメソッドでタッチを検出しようとしています。ピンチでは、それに応じて画像のサイズを変更する必要があります。たとえば、ユーザーが指を水平方向にのみ動かす場合、ビューの幅のみのサイズを変更します。
正常に動作していますが、画面を指で触れると、ほとんどの場合、アプリがSIGABRTでクラッシュし、メッセージが表示されません。
私のコードは次のとおりです。
if (recognizer.state == UIGestureRecognizerStateBegan) {
previousHorizontalPinchDistance = ABS([recognizer locationOfTouch:1 inView:recognizer.view].x - [recognizer locationOfTouch:0 inView:recognizer.view].x);
previousVerticalPinchDistance = ABS([recognizer locationOfTouch:1 inView:recognizer.view].y - [recognizer locationOfTouch:0 inView:recognizer.view].y);
}
CGFloat horizontalPinchDistance = ABS([recognizer locationOfTouch:1 inView:recognizer.view].x - [recognizer locationOfTouch:0 inView:recognizer.view].x);
CGFloat verticalPinchDistance = ABS([recognizer locationOfTouch:1 inView:recognizer.view].y - [recognizer locationOfTouch:0 inView:recognizer.view].y);
クラッシュは、私が設定した行で発生しhorizontalPinchDistance
ます。なぜですか?ありがとう!