ios - 如何使用 Swift 播放本地视频?

标签 ios objective-c swift avplayer avplayerviewcontroller

我有一个简短的 mp4 视频文件,已添加到我当前的 Xcode6 Beta 项目中。

我想在我的应用中播放视频。

经过几个小时的搜索,我找不到任何有帮助的东西。有没有办法用 Swift 完成这个,或者你必须使用 Objective-C? 我可以指出正确的方向吗?我不可能是唯一一个对此感到疑惑的人。

最佳答案

当然可以使用 Swift!

1。添加视频文件

将视频(我们称之为 video.m4v)添加到您的 Xcode 项目中

2。检查您的视频是否包含在 Bundle 中

打开Project Navigator cmd + 1

然后选择你的项目根目录 > 你的目标 > Build Phases > Copy Bundle Resources

您的视频必须在这里。如果不是,那么您应该使用加号按钮添加它

enter image description here

3。代码

打开您的 View Controller 并编写此代码。

import UIKit
import AVKit
import AVFoundation

class ViewController: UIViewController {

    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        playVideo()
    }

    private func playVideo() {
        guard let path = Bundle.main.path(forResource: "video", ofType:"m4v") else {
            debugPrint("video.m4v not found")
            return
        }
        let player = AVPlayer(url: URL(fileURLWithPath: path))
        let playerController = AVPlayerViewController()
        playerController.player = player
        present(playerController, animated: true) {
            player.play()
        }
    }
}

关于ios - 如何使用 Swift 播放本地视频?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25348877/

相关文章:

objective-c - 将 NSToolbar 重置回默认配置

iphone - 如何使用 TTTAttributedLabel 添加 "Read more"

iphone - iOS,使用下划线与直接使用 iVar

iOS UI 测试 - 无法找到 UILabel *with* accessibilityIdentifier

ios - swift :围绕给定数字创建范围

ios - 在 iOS 7 的 Popover 中通过 TableView 搜索的问题

ios - AF网络 2 : Limit max number of concurrent Download Tasks

ios - 激活 iPhone 相机操作使我的应用程序崩溃

ios - iOS 中的 UIWebView 缓存

Swift 3 - 原子 boolean 值