美文网首页
iOS Swift3.0 UIView动画详解

iOS Swift3.0 UIView动画详解

作者: Scott昵称被占用 | 来源:发表于2018-01-05 04:33 被阅读271次

    iOS Swift3.0 UIView动画详解

    [TOC]

    在IOS开发中为了做一些比较炫的效果有时候免不了使用动画。虽然苹果自带了CoreAnimation和Facebook的Pop等动画框架,这些的确是程序员开发的利器,但是我们在做一些比较简单的动画时,我们直接使用UIView就可以了, 先给大家看看效果是不是想要的, 这只是一个学习基础和入门,需要根据自己的实际情况在做详细的开发。


    这里写图片描述

    缩放动画

    缩放动画可以让一个View的大小发生改变,按照一定的比例放大缩小

    //animScale 为动画调用的方法
    UIView.animate(withDuration: 2, animations: animScale)
    
    //缩小为原来的0.5倍或者还原为原来的大小;
    func animScale(){
        self.Image.transform = CGAffineTransform(scaleX: scale, y: scale)
        if scale == 0.5 {
            scale = 1
        }else{
            scale = 0.5
        }
    }
    

    旋转动画

    旋转动画可以让一个View绕原点进行旋转

    //animSpin 为动画调用的方法
    @IBAction func spinAnimation(_ sender: AnyObject) {
            UIView.animate(withDuration: 10, delay: 0, options: .curveLinear, animations: animSpin, completion: nil)
        }
    
    func animSpin(){
            //旋转角度
            self.Image.transform = self.Image.transform.rotated(by: CGFloat(360))
        }
    

    透明度动画

    透明度动画可以让一个View的透明度在0~1之间改变。透明度为0表示全透明,看不见了。透明度为1表示和正常情况下一样

    @IBAction func animAlpha(_ sender: AnyObject) {
            UIView.animate(withDuration: 2, animations: animAnimation)//时常为2s;
        }
    
    //改变透明度到0.2 或者还原
        func animAnimation(){
            if alpha == 0.2 {
                self.Image.alpha = alpha
                alpha = 1
            }else {
                self.Image.alpha = alpha
                alpha = 0.2
            }
        }
    

    实现这些动画仅仅是一些简单的,大家可以通过下载代码自己尝试一下
    代码地址https://github.com/thesnail/SwiftNotes

    相关文章

      网友评论

          本文标题:iOS Swift3.0 UIView动画详解

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