静态Var缺少参数“coder”的参数

时间:2015-10-19 15:04:10

标签: swift static var

我有一个带有webview的类,我想添加一个静态var,我已经用其他类做了它并且它正在工作但现在我不知道为什么,但我有一个关于“编码器”参数的错误:

 class Actu: UIViewController, WKNavigationDelegate  {

class var myInstance : Actu{
    struct Static {
        static let myInstanceActu : Actu = Actu() //Missing argument for parameter 'coder' in call
    }
    return Static.myInstanceActu
}
       required init(coder aDecoder: NSCoder){
    let config = WKWebViewConfiguration()
    let scriptURL = NSBundle.mainBundle().pathForResource("hideSectionsActu", ofType: "js")
    let scriptContent = String(contentsOfFile:scriptURL!, encoding:NSUTF8StringEncoding, error: nil)
    let script = WKUserScript(source: scriptContent!, injectionTime: .AtDocumentStart, forMainFrameOnly: true)
    config.userContentController.addUserScript(script)
    self.webView = WKWebView(frame: CGRectZero, configuration: config)
    super.init(coder: aDecoder)
    self.webView.navigationDelegate = self

}

}

如果有人有想法,谢谢

1 个答案:

答案 0 :(得分:2)

问题是你没有任何不带参数的初始化器。尝试添加以下初始化程序,它应该可以工作。

init () {
   // Your initialization
}

编辑:发布OP评论 - 每个Apple文档:

  

“指定的初始化程序必须确保所有”属性   由类引入的它在委托之前被初始化   超类初始化器。“