我刚刚更新了Xcode的新测试版以继续使用我的WatchKit应用程序
我更新了所有WatchKit扩展文件后立即收到错误
"初始化程序不会覆盖其超类"
中的指定初始值设定项在我更新之前,我没有收到此错误,但不确定如何修复它。
任何见解?
这是我的代码
class InterfaceController: WKInterfaceController {
override init(context: AnyObject?) {
// Initialize variables here.
super.init(context: context)
// Configure interface objects here.
NSLog("%@ init", self)
}
override func willActivate() {
// This method is called when watch view controller is about to be visible to user
super.willActivate()
NSLog("%@ will activate", self)
}
override func didDeactivate() {
// This method is called when watch view controller is no longer visible
NSLog("%@ did deactivate", self)
super.didDeactivate()
}
}
答案 0 :(得分:7)
使用Beta 3发布时,initWithContext现已弃用。您应该使用awakeWithContext
。 WKInterfaceController类的init
方法现在被指定为初始化。
参考: https://developer.apple.com/library/prerelease/ios/releasenotes/General/RN-iOSSDK-8.2/index.html, Notes 部分。
答案 1 :(得分:2)
您只能在指定的初始化程序上调用super,而WKInterfaceController init()是唯一的。你可以仔细看看awakeWithContext(_ :)方法。