【问题标题】:AVPlayerViewController - UIButton not triggering videoAVPlayerViewController - UIButton 不触发视频
【发布时间】:2016-03-10 18:09:08
【问题描述】:

我正在使用 AVPlayerViewController 来在我的项目中播放 .mov 文件 (TeethingFinal.mov)。有趣的是,我的功能与同一个 ViewController 上的其他两个按钮完美配合,但由于某种原因无法启动 AVPlayer!正在识别点击手势,因为按下时我可以看到按钮突出显示但没有任何反应。我会发布错误消息,但没有!

     @IBAction func sugarBugPlay(sender: UIButton) {
        let moviePlayerController = AVPlayerViewController()
        let path = NSBundle.mainBundle().pathForResource("TeethingFinal", ofType:"mov")
        let url = NSURL.fileURLWithPath(path!)
        let playerVC = AVPlayerViewController()
        var player: AVPlayer = AVPlayer()
        playerVC.player = AVPlayer(URL: url)
        self.presentViewController(playerVC, animated: true, completion: nil)
}

【问题讨论】:

  • 你能给我们展示一些有效的代码吗(你提到了其他被证明是成功的案例)?
  • 上面的代码和我其他功能按钮的代码一样,只是换成了按钮名称。 @IBAction functoothEruptPlay(sender: UIButton) { let moviePlayerController = AVPlayerViewController() let path = NSBundle.mainBundle().pathForResource("TeethingFinal", ofType:"mov") let url = NSURL.fileURLWithPath(path!) let playerVC = AVPlayerViewController() var player: AVPlayer = AVPlayer() playerVC.player = AVPlayer(URL: url) self.presentViewController(playerVC, 动画: true, 完成: nil) }
  • 你确定你的包中有那个文件(正确命名)吗?我看不出你的代码有什么问题,这就是为什么其他案例似乎有效而这个无效的原因让我感到困惑......
  • 这也是让我困惑的地方。我什至将文件名更改为与其他 UIButton 一起使用的其他视频来测试它,但这也不起作用。我检查了连接,也一切正常。
  • 疯狂猜测:您能否尝试将您的AVPlayerController 设为一个属性,以便您的控制器对它有一个强引用?所以不要在函数中声明它,而是将它移到外面并使其成为一个属性

标签: ios xcode swift avplayerviewcontroller


【解决方案1】:

所以有时 Xcode 很有趣。我以完全相同的方式创建了一个全新的 ViewController 并重新连接了我的所有插座并且它工作了!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-21
    • 2016-12-30
    • 2013-08-20
    • 2014-06-23
    • 2013-12-24
    • 1970-01-01
    相关资源
    最近更新 更多