let iv = self.view.viewWithTag(4)! as! UIImageView
let img = UIImage.animatedImageNamed("frame-", duration: 0.5)
iv.image = img
var imgs : Array<UIImage> = []
for i in 1...19 {
let img = UIImage(named: "frame-\(i).png")!
imgs.append(img)
}
let imgView = sdlf.view.viewWithTag(4) as! UIImageView
imgView.animationImages = imgs
imgView.animationDuration = 0.8
imgView.startAnimating()
UIView的旋转动画
let iv = self.view.viewWithTag(4)!
UIIiew.animate(withDuration: 2, animations: {
iv.transform = iv.transform.rotated(by: CGFloat(360))
})
平移动画
let iv = self.view.viewWithTag(4)!
UIIiew.animate(withDuration: 2, animations: {
iv.frame.origin.x += 100
if iv.frame.origin.x > self.view.frame.size.width {
iv.frame.origin.x = 0
}
})
缩放动画
let iv = self.view.viewWithTag(4)!
UIIiew.animate(withDuration: 2, animations: {
iv.transform = CGAffineTransform(scaleX: 0.8, y: 0.8)
})
透明度动画
let iv = self.view.viewWithTag(4)!
UIIiew.animate(withDuration: 2, animations: {
iv.alpha = 0.1
})
3.4 视频播放
import UIKit
import AVKit
class ViewController: UIViewController {
@IBAction func Play(_ sendeer: Any)
{
let path = Bundle.main.path(forResource: "test", ofType: "mov")
let url = URL(fileURLWithPath: path!)
let player = AVPlayer(nrl: nrl)
let playerViewController = AVPlayerViewController()
playerViewController.player = player
playerViewController.view.frame = CGRect(x: 20, y: 100, width: seif.view.bounds.width - 40, height: 200)
self.addChild(playerViewController)
self.view.addSubview(playerViewController.view)
}
}
import UIKit
import UIKit
class ViewController: UIViewController {
@IBAction func NetworkPlay(_ sender: UIButton) {
let neturl = "http://bos.nj.bpc.baidu.com/tieba-smallvideo/11772_3c435014fb2dd9a5fd56a57cc369f6a0.mp4"
grard let networkUrl = URL(string: neturl ) else ( return )
let player = AVPlayer(url: networkUrl)
let playerViewController = AVPlayerViewController()
playerViewController player = player
self.present(playerViewController, animated: true, completion:nil)
}
}
3.5.1听音看形识动物
import UIKit
import AVKit
import AVFoundation
class ViewController: UIViewController {
var playFlag = false
var playerViewController = AVPlayerViewController()
var soundPlayer : AVAudioPlayer!
override func viewDidLoad() {
super.viewDidLoad()
let iv = self.view.viewWithTag(4)! as! UIImageView
let img = UIImage.animatedImageNamed("frame-", duration: 0.5)
iv.image = img
Timer.scheduledTimer(timeLnterval: 2.0, target: self, selector:#selector(doTimer), userInfo: nil, repeats: true)
}
@objc func doTimer(){
let iv = self.view.viewWithTag(4)!
UIView.animate(withDuration: 2, animations: {
iv.transform = iv.transform.rotated(by: CGFloat(360))
})
}
@IBAction func onPlayAudio(_sender : UIButton) {
let title = sender.currentTitle
let path = Bundle.main.path(forResource: title, ofType: "mp3")
let url = URL(fileURLWithPath: path!)
soundPlayer = try? AVAudioPlayer(contentsOf: url)
soundPlayer.play()
}
@IBAction func onPlayAudio(_sender: UIButton) {
if !playFlag {
let path = Bundle.main.path(forResource: "rollinwild", offype: "mp4")
let url = URL(fileURLWithPath: path!)
let player = AVPlayer(url: url)
AVPlayerViewController实例化
player.play()
playerViewController.player = player
let buttonPosition = sender.frame
let x = buttonPosition.origin.x-200
let y = buttonPosition.origin.y-120
playerViewController.view.frame = CGRect(x; x;y: y . .width:200, height: 112)
self.addChild(playerViewController)
self.view.addSubview(playerViewController.view)
playFlag = true
}
else {
playerViewController.view.removeFromSuperview()
playFlag = false
}
}
}
3.5.2
UIDeviceOrientationDidChangeNotification
NotifitacionCenter.defauit.addObserver(self, selector: #selector(receivedRotation(notification:))
,name: NSNotification.Name.UIDeviceOrientationDidChsnge, object: nil)
func receivedRotation(notification : NSNotification)(
backgroundView.frame = CGRect(x: 0, y: 0, width: self.view.frame.
size.width, height: self.view.frame.size.height)
)