0

私はお互いの上に2つの同一のビューを持っています。1 つは本物で、もう 1 つはダミーとして機能するはずです。

それらの間を(静かに)クロスフェードしたいと思います。同じアニメーション ブロックで、1 つのビューのアルファを 0 に設定し、2 番目のビューのアルファを 1 に同時に設定しました。

しかし、結果はスムーズではなく、1 つのビューがフェードアウトし、2 つ目のビューがフェードインしているのがわかります。

PS実際のビューはフェードアウトする必要があるコレクションビューの一部であり、2番目のビュー(ダミー)はコレクションビューがなくなった後にコレクションビューのセルの1つを置き換えることを想定しているため、アニメーションなしでこれらのアルファを設定することはできません。

それを行う方法と、iOSがそのようにレンダリングする理由は?

ありがとう!

4

1 に答える 1

2

試す:

[UIView transitionFromView:view1 toView:view2 duration:0.5
                       options:UIViewAnimationOptionTransitionCrossDissolve
                    completion:^(BOOL finished) {
        // Compeltion code
    }];
于 2014-03-04T10:21:36.947 に答える