1

新しい iPhone 5 用にアプリを構成する作業を行っています。そのため、cocao touch の自動レイアウト ガイド ([リンク][1]) と WDC マスタークラスの調査から始めました。

しかし、まだ私には不明なことが1つあります。ビューをアニメーション化するにはどうすればよいですか。

以前のアプリでは、次のような通常の UIView アニメーションを使用しました。

            [UIView  beginAnimations:nil context:NULL];
            [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
            [UIView setAnimationDuration:0.75];
            MyView.frame = CGRectMake(0,100, 100, 100);
            [UIView commitAnimations];

または CGAffineTransform メソッド。

フレームを参照できず、フレーム宣言を行わなくなったため、自動レイアウトを使用する場合の最善の回避策を教えてもらえますか? タイマーを設定し、制約を削除および追加しますか?

4

3 に答える 3

3

制約は実際にはアニメーションとはまったく関係ありません。

ただし、 などの最新のブロック ベースのアニメーション メソッドを使用する必要がありますanimateWithDuration:animations:

于 2012-09-20T13:29:34.440 に答える
0

使用する必要があります

[MyView layoutIfNeeded];

アニメブロックで。

于 2012-12-24T06:25:22.497 に答える
0

ええ、自動レイアウトを使用すると、すべてのsetFrameメソッドが削除されます。あなたの場合、ビューを特定のピクセル数で移動させたい場合は、ビューのフレームを設定する代わりにビューの中心を移動して、ビューの周りの制約の優先度を低く設定してみてください。

于 2012-12-05T04:40:57.643 に答える