11

タッチに基づいてレイヤーを移動する方法を知っています。しかし、画像を回転できるようにしたいです。

これを行う方法を示すサンプル コードはありますか? または、誰かアドバイスをいただけますか?

ありがとう!

4

4 に答える 4

20

これを行う最も簡単な方法は、レイヤーの変換プロパティを使用することです。

float   angle = M_PI;  //rotate 180°, or 1 π radians
layer.transform = CATransform3DMakeRotation(angle, 0, 0.0, 1.0);

CATransform3DMakeRotation関数の最初の引数は、回転する量(ラジアン)です。次の3つは、回転するベクトルについて説明しています。これは、z軸のベクトルを表しているため、画面に実質的に垂直です。これにより、レイヤーが逆さまになるように回転します。

于 2008-10-28T10:48:22.950 に答える
11

私はこのようにそれをすることになった:

CGAffineTransform transform = CGAffineTransformMakeRotation(angle);
[[self viewWithTag:999] setTransform:transform];

角度はラジアンであることに注意してください。

于 2008-10-28T20:31:56.470 に答える
1

ビューの変換プロパティを使用します。ビューを回転させるためのサンプル コードは、iPhone OS プログラミング ガイドの「Launching in Landscape Mode 」の下にあります。

于 2008-10-28T09:10:24.190 に答える
0

タッチに基づいてレイヤー内を移動する方法については、Apple のMoveMeの例を参照してください。また、いくつかのスケーリング変換も適用されるため、回転変換を適用する適切な例として役立つはずです。

于 2008-10-28T09:32:49.280 に答える