目錄:[Swift]Xcode實際操做html
本文將演示翻轉動畫的製做。swift
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】ide
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 9 //建立一個位置在(50,50),尺寸爲(220,320)的顯示區域 10 let rect = CGRect(x: 50, y: 50, width: 220, height: 320) 11 //初始化一個圖像視圖,並設置其位置和尺寸信息 12 let imageView = UIImageView(frame: rect) 13 14 //從項目資源文件中加載一張圖片 15 let image = UIImage(named: "Picture") 16 //給圖像視圖指定須要顯示的圖片 17 imageView.image = image 18 //設置圖像視圖的標識值,以方便後期對圖像視圖的調用 19 imageView.tag = 1 20 21 //將圖像視圖,添加到當時視圖控制器的根視圖 22 self.view.addSubview(imageView) 23 24 //初始化一個按鈕對象,當點擊按鈕時,開始播放動畫 25 let button = UIButton(type: UIButton.ButtonType.system) 26 //設置按鈕對象的位置爲(50,400),尺寸爲(220,44) 27 button.frame = CGRect(x: 50, y: 400, width: 220, height: 44) 28 //設置按鈕對象的背景顏色爲橙色 29 button.backgroundColor = UIColor.orange 30 //設置按鈕對象的標題文字 31 button.setTitle("Tap it.", for: UIControl.State()) 32 //給按鈕對象,綁定點擊事件 33 button.addTarget(self, action: #selector(ViewController.playAnimation), for: UIControl.Event.touchUpInside) 34 35 //將按鈕對象,添加到當前視圖控制器的根視圖 36 self.view.addSubview(button) 37 } 38 39 //建立一個方法,用來響應按鈕的點擊事件 40 @objc func playAnimation() 41 { 42 //發出開始動畫的請求, 43 //標誌着視圖動畫塊的開始。 44 //在它和提交動畫請求之間,能夠定義動畫的各類展示方式 45 UIView.beginAnimations(nil, context: nil) 46 //設置動畫的播放速度爲淡入淡出 47 UIView.setAnimationCurve(.easeOut) 48 //設置動畫的時長爲5秒 49 UIView.setAnimationDuration(50) 50 //設置動畫從視圖當前狀態開始播放 51 UIView.setAnimationBeginsFromCurrentState(true) 52 //經過標識值,找到上方代碼種建立的圖像視圖做爲動畫的載體 53 let view = self.view.viewWithTag(1) 54 //設置動畫類型爲翻轉動畫 55 UIView.setAnimationTransition(.flipFromRight, for: view!, cache: true) 56 //調用視圖的提交動畫方法,標誌着動畫塊的結束 57 UIView.commitAnimations() 58 } 59 60 override func didReceiveMemoryWarning() { 61 super.didReceiveMemoryWarning() 62 // Dispose of any resources that can be recreated. 63 } 64 }