-2
に私はボタンが押されたときのUIViewのサブクラスを移動することにより、簡単なアニメーションをしようとしています。ボタンが押されると、ビューは元の位置からxx単位だけ離れて移動しますが、xx単位離れて元の位置に戻ってしまうという不具合があります。私はそれを新しいポジションでやりたい。私のコードで何が間違っていますか?アニメーションのバグは、iOS
[UIView animateWithDuration:0.5f animations:^{
self.analogStick.frame = CGRectOffset(self.analogStick.frame, 0, -10);
}];
問題は、定義された自動レイアウトの制約があるためにどのビューをアニメーション化していることです。これをアニメーション化するには、先頭の制約のコンセントを追加し、 'constant'プロパティを変更して、' layoutIfNeeded'の呼び出しをアニメートする必要があります。 http://stackoverflow.com/a/28329399/1271826を参照してください。 – Rob
@Rob最初にビューを読み込んでいるときに、アニメーションが表示されたら、ビューが読み込まれた後でも機能するかどうかを説明していますか?ボタンを押すたびに位置を動的に更新しますか? –
はい、ボタンのタップで、上部の制約の 'constant'を調整し、' layoutIfNeeded'に呼び出しをアニメートします。 – Rob