1

次のような長方形のビューを実装しようとしています。ユーザーが長方形のビューを左または右からドラッグすると、次のように引き伸ばされます。

ここに画像の説明を入力してください

ユーザーがUIViewを上または下に引くと、次のように回転します。

ここに画像の説明を入力してください

誰かがこれを実装する方法についての手がかりを私に与えることができるかどうか疑問に思います。ジェスチャレコグナイザーでそれができるとは思いません。誰か知っている?

更新:これは、回転がないと仮定して実際に行うのは悪くありません。ユーザーが左右にドラッグした量だけ伸ばすか、引き上げた量だけ回転させることができます。ただし、ビューを回転させると、ポイントが変更されるため、この方法は機能しなくなります。これを実行する方法について何かアイデアはありますか?

4

3 に答える 3

0

これは、ジェスチャレコグナイザを使用して行うことができます。ただし、これらのジェスチャが発生したときにビューをどう処理するかをiOSに指示する必要があります。

回転ジェスチャレコグナイザーアクションに配置するコードは、次のようになります。

self.myView.transform = CGAffineTransform(CGAffineTranformIdentity, self.rotationRecognizer.rotation);
// Where myView is an outlet to your UIView
// rotationRecognizer is an outlet to your rotation gesture recognizer
于 2013-03-04T18:20:37.237 に答える
0

ピンチのサイズ変更や回転など、各タイプの UIGesture を簡単に使用する方法を示す Github プロジェクトがあります。

ピンチ、回転、同時のセクションをチェックしてください。あなたが探しているものを正確に見つけることができると思います。

https://github.com/EmperiorEric/UIGestures

于 2013-03-06T18:57:11.870 に答える
0

これらの UIView メソッドを見てください。これらのメソッドをサブクラス化してオーバーライドし、必要なことを行うことができます。

touchesBegan:withEvent:, touchesMoved:withEvent:, touchesEnded:withEvent:, touchesCancelled:withEvent:

  • タッチ イベントを直接処理する必要がある場合は、これらのメソッドを実装します。(ジェスチャベースの入力の場合は、ジェスチャ レコグナイザを使用します。)
于 2013-03-04T17:55:41.713 に答える