【问题标题】:How to play video in did select row method collectionview如何在选择行方法collectionview中播放视频
【发布时间】:2019-03-21 07:07:03
【问题描述】:

我在 Collection 视图中编写以下代码确实选择了行,但是当我当时选择单元格时出现以下错误 Error_Image In simulator

 func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
        if collectionView == faQs_collectionview
        {
            let fileURL =  videourls[indexPath.item]

            let playerviewcontroller = AVPlayerViewController()
            var playerview = AVPlayer()

            playerview = AVPlayer(url: fileURL as URL)

            playerviewcontroller.player = playerview

            self.present(playerviewcontroller, animated: true){

                playerviewcontroller.player?.play()
            }
        }else{

        }

    }

【问题讨论】:

标签: ios arrays video avplayer


【解决方案1】:

通过查看您提供的链接,您似乎正在尝试在 AVPlayer 中播放 YouTube 视频

AVPlayer 用于播放媒体文件,例如,如果您在服务器上的某处有视频或音频文件,并且您提供了到 AVPlayer 的链接,它就会播放。 但 YouTube 链接不是视频文件。

您必须添加在 webviews 中播放它们,如下所示

class MyYTVideoPlayer: UIViewController {
    @IBOutlet weak var wv: UIWebView!
    var videoId:String
    override func viewDidLoad() {
        super.viewDidLoad()

        guard
            let youtubeURL = URL(string: "https://www.youtube.com/embed/\(videoId)")
            else { return }
        wv.loadRequest( URLRequest(url: youtubeURL) )
    }
}

或从here 实现 YouTube 播放器

【讨论】:

  • 它工作正常,但在模拟器中有声音,但没有真正的设备声音
  • 确保在真实设备中,铃声已打开,检查音量。我会尝试在设备上运行代码,然后回复您。
  • 重新检查,铃声必须打开,而不是静音。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-18
  • 1970-01-01
  • 2017-06-09
  • 1970-01-01
  • 2016-10-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多