Wednesday, October 4, 2017

Swift play video file

Bạn có thể chơi được các file video có định dạng mov và mp4 với Swift.
Tại class bất kỳ, kéo file video cần play vào cây thư mục bên trái của project.
Copy các dòng import lên trên viewDidLoad.
import UIKit
import AVFoundation
import AVKit
Copy các dòng sau vào trong viewDidLoad.
let url = NSBundle.mainBundle().pathForResource("video", ofType: "mp4")!
let play = AVPlayer(URL: NSURL(fileURLWithPath: url))
let playerViewController = AVPlayerViewController()
 playerViewController.player = play
self.addChildViewController(playerViewController)
self.view.addSubview(playerViewController.view)
playerViewController.view.frame = self.view.frame
play.play()

Chạy ứng dụng sẽ ra màn hình như sau.


Nếu bạn muốn video không full kín mà chỉ chiếm một phần tại một vị trí nhất định, hãy thay dòng playerViewController.view.frame = self.view.frame
bằng dòng playerViewController.view.frameCGRectMake(30,80,300,400)
Lúc đó video sẽ cách lề trái 30dp, cách đỉnh 80dp, rộng 300dp và cao 400dp.
Đôi lúc bạn đã làm đúng hết rồi mà ứng dụng lại crash, hãy kiểm tra xem đã có file cần play trong Bundle Resource chưa.
Nháy vào gốc cây thư mục ở trên, chọn Build Phases, mở rộng Copy Bundle Resources bằng cách nháy vào dấu tam giác bên trái, cuộn xuống Click vào dấu + .

Chọn file video cần chơi, click vào nút Add.

Cách này cũng play được file nhạc không có hình.
Nếu định dạng file video không được hỗ trợ, màn hình sẽ ra như sau.



No comments:

Post a Comment