我想将VLCKit与SwiftUI一起使用。
为什么不是AVPlayer?因为某些视频格式不受支持。
这是我的代码:
import SwiftUI
import UIKit
struct ContentView: View {
var body: some View {
NavigationView
{
VStack{
PlayerView(url: "https://bitdash-a.akamaihd.net/content/sintel/hls/playlist.m3u8")
}
}
}
}
struct PlayerView: UIViewRepresentable {
public var url: String
let mediaPlayer = VLCMediaPlayer()
func makeUIView(context: Context) -> UIView {
let controller = UIView()
mediaPlayer.drawable = controller
let uri = URL(string: self.url)
let media = VLCMedia(url: uri!)
mediaPlayer.media = media
mediaPlayer.play()
return controller
}
func updateUIView(_ uiView: UIView, context: UIViewRepresentableContext<PlayerView>) {
}
} …Run Code Online (Sandbox Code Playgroud) 我的应用程序遇到问题,NavigationView当用户将视频全屏显示并向上拖动视频时,我在(第三级视图)中有一个视频,屏幕变黑,视频继续在后台播放。
SwiftUI 和 Swift 5
另外,我正在寻找任何使用 SwiftUI 的方法,一旦用户点击按钮而不是在新视图中加载,即可进入全屏视频。
编辑
我发现了拖动问题,如果有人面临同样的问题,请检查您是否在应用程序中禁用了任何方向模式,在我的情况下,它修复了必须在所有方向模式下启用应用程序的问题。