我正在尝试做一些非常基本的事情,我为YouTubePlayerView类分配了一个插座,一旦加载ID,它就会崩溃。
为什么会崩溃?
我检查插座是否正确连接,并且调试器显示videoId定义正确。
码:
import UIKit
import YouTubePlayer
class InfoViewController: UIViewController {
var videoId = "Bgh9u7x8i4Y"
@IBOutlet var youtubePlayer: YouTubePlayerView!
override func viewDidLoad() {
super.viewDidLoad()
self.youtubePlayer.loadVideoID(videoId)
}
@IBAction func exit(_ sender: UIButton) {
performSegue(withIdentifier: "unwindToMainFromInfo", sender: self)
}
}
最佳答案
好吧,我仍然不确定导致崩溃的原因,我相信这是与框架有关的,并且在Storyboard中选择添加的UIView的类型(并通过身份检查器将其设置为YouTubePlayerView)会导致崩溃。加载videoId。
解决方法是以编程方式添加播放器。我在情节提要板上使用了纯视图,以便在初始化时轻松为播放器提供框架。但是,否则,以编程方式可以顺利进行。
码:
@IBOutlet weak var viewForPlayer: UIView!
override func viewDidLoad() {
super.viewDidLoad()
let frameForPlayer = viewForPlayer.frame
let player = YouTubePlayerView(frame: frameForPlayer)
player.loadVideoID(InstructionsVideoId)
player.play()
self.view.addSubview(player)
}