8.24 Animation 简单动画

import UIKit

class ViewController: UIViewController {
    @IBOutlet weak var redView: UIView!
    @IBOutlet weak var blueView: UIView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
    }
    
    
    @IBAction func didStart(sender: UIButton) {
//        UIView.animateWithDuration(3) {
//            self.redView.frame = CGRect(x: 300, y: 300, width: 100, height: 100)         更改红色视图坐标及颜色
//            self.redView.backgroundColor = UIColor.blueColor()
//            
//        }
//        执行时长,执行的内容,结束后做什么
//        UIView.animateWithDuration(5, animations: { 
//            self.blueView.frame = CGRect(x: 50, y: 50, width: 100, height: 100)    更改蓝色视图坐标
//            }) { (completion) in
//                print("动画执行完了")
//        }
          时长,延迟多少秒执行,执行的可选方法,执行的内容
//        UIView.animateWithDuration(5, delay: 3, options: [.CurveEaseInOut, .Autoreverse], animations: {
//            self.blueView.backgroundColor = UIColor.yellowColor()
//            self.blueView.frame = CGRect(x: 50, y: 50, width: 100, height: 100)
//            }) { (completion) in
//                print("The End")
//        }     

注释了的代码为写法之一,编译运行,看到两个视图颜色位置均有变化

Paste_Image.png
Paste_Image.png
Paste_Image.png

使用UIVIew.setAnimation的方法做动画效果

//        1.开始设置动画
        UIView.beginAnimations("first", context: nil)
        
//        2. 设置动画属性
        UIView.setAnimationDuration(5)     //时长几秒
        UIView.setAnimationRepeatCount(2)  //重复几次
        UIView.setAnimationDelegate(self)  //设置代理方法所在的对象
        UIView.setAnimationWillStartSelector(#selector(animateDidStart(_:context:)))
      UIView.setAnimationDidStopSelector(#selector(animateDidStop(_:finished:context:)))
        
//        3.设置目标属性
        self.redView.backgroundColor = UIColor.grayColor()
        
//        4.提交动画
        UIView.commitAnimations()   
    }
    
    func animateDidStart(animationID: NSString, context: UnsafePointer<Void>) {
        print("will start")
    }
    //NSNumber
    func animateDidStop(animationID: NSString, finished: Bool, context: UnsafePointer<Void>) {
        print(finished)
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}

编译运行,看到红色方块用5秒变化成了灰色

Paste_Image.png
Paste_Image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,259评论 4 61
  • 易静
    我是一面镜子阅读 91评论 0 0
  • 庄子不二传 第36回 伟大的领袖、伟大的导师、伟大的统帅、伟大的舵手尧自己也觉得领导做到死不太妥,传位儿子又会...
    徐不二阅读 525评论 1 0
  • 战狼一班 019-马广治 今天,是我们参加军训的第三天!身体还是很累,但军训科目的技巧性确更强了,我想这...
    冰棍就辣条阅读 434评论 0 1
  • 你走进书店, 刚好走到你想看的那本书面前, 你欣喜若狂,开心的掩嘴而笑。 你抱住身边的人, 你说,因为那是你喜欢的...
    众语阅读 231评论 0 0