0

そのため、アプリが開くとすぐにいくつかの UI 要素をアニメーション化するアプリがあります。これらのアニメーションは、単純な UIView アニメーションを使用して行われます。以下はviewDidLoad部分のサンプルです

    //animate settings in the frame
    CGRect settingsFrame = settingsView.frame;
    settingsFrame.origin.x = -104;
    settingsFrame.origin.y = 457;
    settingsView.frame = settingsFrame;

    //animate about in the frame
    CGRect aboutFrame = aboutView.frame;
    aboutFrame.origin.x = -104;
    aboutFrame.origin.y = 457;
    aboutView.frame = aboutFrame;

そして、これは呼び出される対応するメソッド部分です。

CGRect settingsFrame = settingsView.frame;
settingsFrame.origin.x = 0; // new x coordinate
settingsFrame.origin.y = 457; // new y coordinate
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration: 1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
settingsView.frame = settingsFrame;

CGRect aboutFrame = aboutView.frame;
aboutFrame.origin.x = 104; // new x coordinate
aboutFrame.origin.y = 457; // new y coordinate
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration: 1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
aboutView.frame = aboutFrame;

アニメーションを完成させるために、さらに 4 つの一致するコード セットがあります。私の問題は、viewDidLoad 部分が有効になっている (コメントアウトされていない) ときはいつでも、アプリ内の xib への他の遷移が遅くなることです。これらのアニメーションを維持しながら、遷移が遅くならないようにする方法を知っていますか?

それに加えて、これは iOS 7 と Xcode 5 Developer Preview で開発されていると言わざるを得ないので、バグを排除するつもりはありません...

4

1 に答える 1