UIボタンが1つあります。ポイント A からポイント B に移動させたいのですが、移動中、そのボタンは 360 度 1 回転する必要があります。
何らかのイベントの後、今度は逆方向に回転して、その UIButton を元の位置に戻したいと思います。
このコードを書きましたが、うまくいきませんでした。ボタンが予期しない方法で回転するのを見ています。ここで何が欠けていますか?
移動するには:
[UIView animateWithDuration:0.3 animations:^{
CGAffineTransform rotate360AntiClockWise = CGAffineTransformMakeRotation(M_PI_2);
CGRect initialFrame = button.frame;
[button setTransform:rotate360AntiClockWise];
[button setFrame:CGRectMake(initialFrame.origin.x - 140.0, initialFrame.origin.y, initialFrame.size.width, initialFrame.size.height)];
}];
再び同じポジションへ
[UIView animateWithDuration:0.4 animations:^{
CGAffineTransform rotate360ClockWise = CGAffineTransformMakeRotation(-M_PI_2);
[button setFrame:originalFrame]; //for movement
[button setTransform:rotate360ClockWise];
}];
}