美文网首页
通过CAKeyframeAnimation对View做一个弹窗动

通过CAKeyframeAnimation对View做一个弹窗动

作者: 今年27 | 来源:发表于2018-12-03 17:11 被阅读7次

    通过这种方式做动画的一个好处呢就是, 你不需要去改变某个view的frame, 就可以做出动画

    - (void)zoomIn: (UIView *)view andAnimationDuration: (float) duration
    {
        CAKeyframeAnimation * animation;
        animation = [CAKeyframeAnimation animationWithKeyPath:@"transform"];
        animation.duration = duration;
        //animation.delegate = self;
        animation.removedOnCompletion = NO;
        animation.fillMode = kCAFillModeForwards;
        NSMutableArray *values = [NSMutableArray array];
        [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.1, 0.1, 1.0)]];
        [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.2, 1.2, 1.0)]];
        [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(0.9, 0.9, 0.9)]];
        [values addObject:[NSValue valueWithCATransform3D:CATransform3DMakeScale(1.0, 1.0, 1.0)]];
        animation.values = values;
        animation.timingFunction = [CAMediaTimingFunction functionWithName: @"easeInEaseOut"];
        [view.layer addAnimation:animation forKey:nil];
    }
     调用方法很简单就是直接对某个view调用就行了
        [self zoomIn:copyView andAnimationDuration:1.0];
    

    参考链接
    http://www.cnblogs.com/zcw-ios/articles/3465583.html

    相关文章

      网友评论

          本文标题:通过CAKeyframeAnimation对View做一个弹窗动

          本文链接:https://www.haomeiwen.com/subject/pdxucqtx.html