animateWithDuration を使用して、UIVIew の 1 つを際限なく回転させています。ここで、特定の時間における UIView の回転の現在の値を取得する必要があります。次の関数を使用しようとしました:
-(float)getCurrentRotation{
CGAffineTransform transform = ((UIImageView*)[self.subviews objectAtIndex:0]).transform;
return (atan2(transform.b, transform.a));
}
ただし、 animateWithDuration への最初の呼び出しで指定した値と同じ値 (M_PI/2) を常に返します。
[UIView animateWithDuration:4 delay:0 options:( UIViewAnimationOptionRepeat|UIViewAnimationOptionCurveLinear) animations:^{
CGAffineTransform transform = CGAffineTransformMakeRotation(M_PI/2);
((UIImageView*)[self.subviews objectAtIndex:0]).transform = transform;
}
completion:^(BOOL finished){
}];
回転の現在の値を取得する方法はありますか?
ありがとう。