これは簡単ですが、UIImageView
を360度回転させて永遠に繰り返すのに問題があります。UIImageViewを時計回りに回す
[UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionAllowUserInteraction | UIViewAnimationOptionRepeat | UIViewAnimationOptionCurveLinear | UIViewAnimationOptionBeginFromCurrentState animations:^{
self.reloadButton.imageView.transform = CGAffineTransformRotate(self.reloadButton.imageView.transform, -M_PI);
} completion:^(BOOL finished) {
}];
ドキュメントによれば、私はCGAffineTransformRotate
に渡す角の符号の有無は、回転の方向を決定するが、上記のコードは、反時計回りに回転します。 M_PI
と同じです。
この行列が座標軸を回転させる角度(ラジアン単位) システム軸。 iOSでは、正の値が反時計回りに 回転を指定し、負の値で時計回りの回転を指定します。 Mac OSの Xでは、正の値は時計回りの回転を指定し、負の値 は反時計回りの回転を指定します。
あなたはCATransform3DとimageViews層の上に回転を行う場合はどうなりますか? –
他の角度(たとえば180度)で回転してみましたか? – giorashc
@David提案していただきありがとうございますが、これは同じ結果をもたらしました:self.reloadButton.imageView.layer.transform = CATransform3DMakeRotation(-M_PI、0、0、1); – Morrowless