うまくいけば簡単な解決策があるという問題があります。ボタン、タイマー、フレーム、cgaffinetransformrotations、および遅延を使用してボブ効果を作成しようとしています。ボタンを回転させて、ボタンのフレームを設定してyを10ピクセル程度増減すると、ボタンのフレームが通常よりも大きくなることを除けば、すべてがすばらしいでしょう。最終結果は、画面を飲み込むまで絶えず大きくなるボタンです。
上向きと下向きの動きをcgaffinetranslationsにしてみましたが、これはtransformプロパティ(回転が使用するものと同じ)を使用します。その結果、非常にびくびくして非現実的なボブになります。
私が達成しようとしているのは、幅と高さを指定せずにフレームの原点コンポーネントを設定することです。ハードコードされた幅と高さを指定しても、回転時に収縮し、平衡に近づくと成長するためです。また。
何か案は?
ありがとう!
コード:
- (void)movePlay{
[self performSelector:@selector(moveDown:) withObject:play];
[self performSelector:@selector(rotateRight:) withObject:play afterDelay:0];
[self performSelector:@selector(moveUp:) withObject:play afterDelay:0.5];
[self performSelector:@selector(rotateLeft:) withObject:play afterDelay:1];
}
- (void)moveUp:(UIButton*)log{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:.5];
log.transform = CGAffineTransformMakeTranslation(0, -20);
[UIView commitAnimations];
}
- (void)rotateRight:(UIButton*)log{
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1];
log.transform = CGAffineTransformMakeRotation(0.0174532925*10);
[UIView commitAnimations];
}