こんにちは私は右下点(時計針のような)でコントロールを回転させたいと思います。右端のボトム点でコントロールを回転する
self.label.layer.anchorPoint = CGPointMake(1.0, 1.0);
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:2];
self.label.transform = CGAffineTransformMakeRotation(M_PI/2);
[UIView commitAnimations];
しかし、ここでの問題は、私のラベルはx軸上のビットが左にして、回転させるようにシフトしていることである:私は次のコードでそうすることができますよ。私は何が間違っているか分からない..助けてください。
同様のポスト:iPhone, How do I rotate an UIImageView around a point using Core Animation and CATransform3D?
ありがとうございました!それはうまくいきましたが、提案されたコードのわずかな変更で2行目が次のように変更されました:self.label.layer.frame = CGRectMake(originalLabelsOrigin.x、originalLabelsOrigin.y、self.label.frame.size.width、self.label.frame.size 。高さ); – Amit
一般的な考え方は、アンカーポイントを移動するのと同じ量だけビューを移動することです(オブジェクトがどこから回転するか、view.frame.size.width/2&view.frame.size.height/2は死んだ中心になります) )。 CGPoint値を使って乗数を設定することもできます。たとえば、xとyの変数を作成し、ビューの対応するフレームサイズでそれらの値を掛け、その値を使用します。そうすれば、毎回正確な金額に移動します。答えがあなたのために働いた場合は、解答にコメントを付けてマークしてください。ここでいくつかの点を説明し始めます。 ;-) –