美文网首页iOS 开发 iOS Developer
Swift UI 16 UIView动画效果

Swift UI 16 UIView动画效果

作者: 前进的苏辰 | 来源:发表于2016-08-24 22:26 被阅读0次

1.非代码块的动画操作,都是对父视图进行操作的
2.另外3种可以加延迟的动画,原理类似(后面两个参数是闭包,类似于于OC中的block代码块)
1:(UIViewAnimationOptions: 动画过渡效果)
// UIView.animateWithDuration(<#T##duration: NSTimeInterval##NSTimeInterval#>, delay: <#T##NSTimeInterval#>, options: <#T##UIViewAnimationOptions#>, animations: <#T##() -> Void#>, completion: <#T##((Bool) -> Void)?##((Bool) -> Void)?##(Bool) -> Void#>)

2:Spring Animation :
(1)usingSpringWithDamping:它的范围为 0.0f 到 1.0f ,数值越小「弹簧」的振动效果越明显。

(2)initialSpringVelocity:初始的速度,数值越大一开始移动越快。值得注意的是,初始速度取值较高而时间较短时,也会出现反弹情况。

usingSpringWithDamping: 类似弹簧振动效果 0~1
initialSpringVelocity: 初始速度
UIViewAnimationOptions: 动画过渡效果
UIView.animateWithDuration(<#T##duration: NSTimeInterval##NSTimeInterval#>, delay: <#T##NSTimeInterval#>, usingSpringWithDamping: <#T##CGFloat#>, initialSpringVelocity: <#T##CGFloat#>, options: <#T##UIViewAnimationOptions#>, animations: <#T##() -> Void#>, completion: <#T##((Bool) -> Void)?##((Bool) -> Void)?##(Bool) -> Void#>)

3:关键帧动画 : (参数解释如下:)
duration 动画时长
delay 动画延迟
options 动画效果选项
animations 动画执行代码
completion 动画结束执行代码
// UIView.animateKeyframesWithDuration(<#T##duration: NSTimeInterval##NSTimeInterval#>, delay: <#T##NSTimeInterval#>, options: <#T##UIViewKeyframeAnimationOptions#>, animations: <#T##() -> Void#>, completion: <#T##((Bool) -> Void)?##((Bool) -> Void)?##(Bool) -> Void#>)

func createAnimation(){
        
        //  创建一个view视图
        let view = UIView.init(frame: CGRectMake(100, 100, 100, 100))
        view.backgroundColor = UIColor.yellowColor()
        self.view.addSubview(view)
        
        
        //非代码块的动画操作,都是对父视图进行操作的
        
        //开启动画
        UIView.beginAnimations(nil, context: nil)

        //设置动画时间(默认单位为秒 s)
        UIView.setAnimationDuration(1)

        //设置动画启动延迟时间
//        UIView.setAnimationDelay(2)
        
        //设置UIView的动画代理
        UIView.setAnimationDelegate(self)

        //动画结束后执行的操作
        UIView.setAnimationDidStopSelector(#selector(self.stop))
        
        
        //可以改变其子视图的大小、位置、颜色、透明度等等
        //动画的最终结果
        view.frame = self.view.frame
        view.backgroundColor = UIColor.redColor()
        
        //结束动画
        UIView.commitAnimations()
    }

func stop(){

        //创建提示框
        let alertView2 = UIAlertController.init(title: "结束", message: "是否重来", preferredStyle: UIAlertControllerStyle.Alert)

        //让提示框在视图中显示出来
self.presentViewController(alertView2, animated: true, completion: nil)
}

相关文章

  • Swift UI 16 UIView动画效果

    1.非代码块的动画操作,都是对父视图进行操作的2.另外3种可以加延迟的动画,原理类似(后面两个参数是闭包,类似于于...

  • iOS开发 - 扩展UIView实现视图动画

    在Swift中,可以快速对UIView进行扩展来实现视图的动画效果

  • 2019-11-12

    swift UIView CALayer动画的暂停与继续 开始动画 UIView.animate(with...

  • UIView动画和Calayer动画

    记住UIView动画是对Calayer动画的部分封装 Swift 4 动画 - 1. UIView Animati...

  • Swift | 函数的闭包参数标签被忽略的问题

    先看看 Swift 的 UIView 动画: 接口: 调用: 同样是 UIView 动画,看看别人 OC: 接口:...

  • Swift5.0 -UIView 动画

    Swift-UIView动画 UIView动画可以设置的动画属性有: 1、大小变化(frame) 2、拉伸变化(b...

  • IOS动画的使用

    在iOS的开发中主要用到下面几种动画:UIView动画,核心动画,帧动画,自定义转场动画。1:UIView动画UI...

  • UIView Animation 基本概念的学习

    UIView视图的动画功能,可以使在更新或切换视图时有放缓节奏、产生流畅的动画效果,从而达到改善用户的体验。 UI...

  • Swift心得之UI篇(三)

    UIView的动画效果 创建一个UIView对象 效果一 参数1:动画持续时间 参数2:闭包,设置动画结束时的状态...

  • UIView+Animation

    提要 给UIView通过类目扩展动画的方法,UIView对象直接传参调用,实现相应的动画效果。 实现 UIView...

网友评论

    本文标题:Swift UI 16 UIView动画效果

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