播放背景视频
问题描述:
我想播放背景视频,但我遇到了一行代码的问题。我得到的,说:“不能调用类型‘URL’没有安排初始化”在这一行错误“开放VAR的contentURL:URL =网址()”播放背景视频
open class VideoSplashViewController: UIViewController {
fileprivate let moviePlayer = AVPlayerViewController()
fileprivate var moviePlayerSoundLevel: Float = 1.0
open var contentURL: URL = URL() {
didSet {
setMoviePlayer(contentURL)
}
}
open var videoFrame: CGRect = CGRect()
open var startTime: CGFloat = 0.0
open var duration: CGFloat = 0.0
open var backgroundColor: UIColor = UIColor.black {
didSet {
view.backgroundColor = backgroundColor
}
}
我不知道如何解决这个问题,请帮助
答
错误消息是不言自明,URL类没有不带参数的:)
如果你看一看URL类的初始化 - 按住CMD键点击URL - ,你会发现,有这样的没有初始化:
init() {}
因此,你不能只是写URL(),因为需要上述初始化。然而,有一个各种URL类其他初始化,如:
init?(string: String) {}
init(fileURLWithPath path: String)
...
您可以使用其中的任何初始化的contentURL实例。
open var contentURL: URL = URL(string: "") {/**/}
open var contentURL: URL = URL(fileURLWithPath: "") {/**/}
答
你应该将以下代码
open var contentURL: URL = URL() {
didSet {
setMoviePlayer(contentURL)
}}
与此:
public var contentURL: NSURL = NSURL() {
didSet {
setMoviePlayer(contentURL)
}}
这将解决您的问题。
您可以添加一个解释为什么你应该使用第二个代码块?这会改善你的答案('这将解决你的问题'不是很有帮助)。 –
因为我有同样的问题,我通过替换这个问题来解决我的问题。 –
我的评论意思是,其他用户很高兴知道哪些更改适合您。但是,如果你自己不知道,就很难解释。 –