小编Ved*_*ant的帖子

在 SwiftUI 视图中嵌入视频

我的主要目标是使用 SwiftUI 在 HStack/VStack 的视图中嵌入 GIF/MP4 文件。我了解代码需要符合“可表示”协议。我第一次尝试这样做如下:

import SwiftUI
import AVKit

struct GIF : UIViewControllerRepresentable {

    let url_name: String

    func makeUIViewController(context: UIViewControllerRepresentableContext<GIF>) -> AVPlayerViewController {
        return AVPlayerViewController()
    }

    func updateUIViewController(_ uiViewController: AVPlayerViewController, context: UIViewControllerRepresentableContext<GIF>) {
        let url = URL(string: url_name)!
        let player = AVPlayer(url: url)
        let vc = AVPlayerViewController()
        vc.player = player
//PROBLEM
        self.present(vc, animated: true){
            vc.player?.play()
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

问题是我认为“自我”在这里没有任何意义,我们需要引用一个视图。我们将如何做到这一点?我们不能只在故事板中创建视图,因为我想将视图控制器与 SwiftUI 集成。

任何帮助,将不胜感激。

PS 这是我的第一个 iOS 应用程序,所以如果我在这里遗漏了一些非常明显的东西,请尽量保持友善!

uikit swift avkit swiftui

7
推荐指数
1
解决办法
2804
查看次数

标签 统计

avkit ×1

swift ×1

swiftui ×1

uikit ×1