2

コア アニメーションのドキュメントによると、レイヤー コンテンツを設定すると、新しいイメージと古いイメージの間で遷移する暗黙の 0.25 アニメーションがトリガーされるはずです。また、この暗黙的なアニメーションを削除する方法を尋ねられている場所もたくさんありますが、プロジェクトでこれを試してみると、何らかの理由で画像がすぐに入れ替わってしまいます。ドキュメントをさらに読むと、このコードが切り取られていることがわかりました。

- (id<CAAction>)actionForLayer:(CALayer *)theLayer
                        forKey:(NSString *)theKey {
    CATransition *theAnimation=nil;

    if ([theKey isEqualToString:@"contents"]) {

        theAnimation = [[CATransition alloc] init];
        theAnimation.duration = 1.0;
        theAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn];
        theAnimation.type = kCATransitionPush;
        theAnimation.subtype = kCATransitionFromRight;
    }
    return theAnimation;
}

これは、「コンテンツ」が暗黙的にアニメーション化されていないことを意味します。

これをよりよく理解することに非常に興味があります。

4

1 に答える 1