我需要在不是全屏的视图中播放视频(比如facebook)!有人可以帮忙吗?我正在使用swift 2和xcode 7.我用谷歌搜索了它,但我找到的只是用AVPlayerViewController和全屏运行.
Ps:抱歉英文不好.
ali*_*ine 24
这有效:
class BeginController: UIViewController {
@IBOutlet weak var videoPreviewLayer: UIView!
var player: AVPlayer!
var avpController = AVPlayerViewController()
override func viewDidLoad() {
super.viewDidLoad()
let moviePath = NSBundle.mainBundle().pathForResource("Hello Moto", ofType: "mp4")
if let path = moviePath {
let url = NSURL.fileURLWithPath(path)
self.player = AVPlayer(url: url)
self.avpController = AVPlayerViewController()
self.avpController.player = self.player
avpController.view.frame = videoPreviewLayer.frame
self.addChildViewController(avpController)
self.view.addSubview(avpController.view)
}
// Do any additional setup after loading the view.
}
Run Code Online (Sandbox Code Playgroud)
您可以尝试使用AVPlayerLayer所需的尺寸和位置并在其上播放视频。
设置播放器和图层的示例代码:
- (void)setupPlayer
{
AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:<Your video item URL>];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playFinished:) name:AVPlayerItemDidPlayToEndTimeNotification object:playerItem];
self.player = [AVPlayer playerWithPlayerItem:playerItem];
self.playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
self.playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill;
[self.view.layer addSublayer:self.playerLayer];
}
Run Code Online (Sandbox Code Playgroud)
有关AVPlayer和AVPlayerLayer的更多信息
| 归档时间: |
|
| 查看次数: |
12064 次 |
| 最近记录: |