iOS Swift5 视频播放

文章目录

1.截图

2.代码

swift 复制代码
import UIKit
import AVKit
import AVFoundation

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        view.backgroundColor = .white
        
        // 创建按钮
        let button = UIButton(type: .system)
        button.frame = CGRect(x: 100, y: 100, width: 200, height: 50)
        button.setTitle("Play Video", for: .normal)
        button.backgroundColor = .systemBlue
        button.setTitleColor(.white, for: .normal)
        
        // 添加按钮的点击事件
        button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)
        
        // 将按钮添加到视图中
        self.view.addSubview(button)
    }


    var playerViewController: AVPlayerViewController!
    var player: AVPlayer!


    @objc func buttonTapped() {
        //本地视频
        guard let localVideoURL = Bundle.main.url(forResource: "sample3", withExtension: "mp4") else {
            MyPrint("Invalid URL")
            return
        }
        // 创建AVPlayer
        player = AVPlayer(url: localVideoURL)

        // 创建AVPlayerViewController并设置player
        playerViewController = AVPlayerViewController()
        playerViewController.player = player
        present(playerViewController, animated: true) { [self] in
            player.play()
        }

    }

}

3.导入本地文件

相关推荐
yong99903 小时前
基于MATLAB的帧间差分法视频目标检测实现
目标检测·matlab·音视频
许泽宇的技术分享7 小时前
SkyReels V1 人像视频生成模型的技术拆解与实战指南
音视频·漫剧·ai漫剧
EasyDSS7 小时前
视频推流平台EasyDSS无人机推流直播技术在水利巡检场景的应用与实践
音视频·无人机
函数的彼端9 小时前
iOS Model Generator - 让 JSON 转模型变得简单高效
ios·json·cocoa
2501_915918419 小时前
HTTPS 端口深度解析,443 并不是唯一入口,理解 TLS 流量行为与抓包策略
网络协议·http·ios·小程序·https·uni-app·iphone
2501_916008899 小时前
iOS 开发者工具全景图,构建从编码、调试到性能诊断的多层级工程化工具体系
android·ios·小程序·https·uni-app·iphone·webview
ElenaYu10 小时前
在 macOS 上安装 iOS Simulator(iPhone 模拟器)
macos·ios·iphone
EasyGBS10 小时前
EasyGBS:一体化视频监控与智能管理解决方案
音视频
5008410 小时前
鸿蒙 Flutter 隐私合规:用户授权中心与数据审计日志
flutter·华为·开源·wpf·音视频
Digitally10 小时前
如何在没有电脑的情况下备份 iPhone
ios·电脑·iphone