Вложение видео в представлении SwiftUI - PullRequest
2 голосов
/ 08 июля 2019

Моя главная цель - вставить файл GIF / MP4 в представление в H / V-стеке в SwiftUI.Я понимаю, что должен сделать это в соответствии с протоколами «представимых».Моя первая попытка сделать это ниже:

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()
        }
    }
}

Основная проблема здесь в том, что я не думаю, что «я» имеет здесь какой-то смысл, и нам нужно обратиться к представлению.Но как бы мы это сделали?Мы не можем просто создать представление в раскадровке, так как я хочу интегрировать контроллер представления с SwiftUI.

Любая помощь будет принята.

PS Это мое первое приложение для iOS, так что если яздесь что-то упущено, пожалуйста, будьте добры!

...