Swift必须调用超类uiinputviewcontroller的指定初始值设定项
今天早上升级到8.3后,我在主题中收到错误。
下面的代码用于完美地工作,但它不再编译。 你们有人可以帮助我吗?
protocol CustomAccessoryProtocol { func controlButtonPressed(tag:Int) } class CustomAccessory : UIInputViewController { var accessoryView : UIView! var delegate : CustomAccessoryProtocol! @IBOutlet weak var returnButton: UIButton! @IBOutlet weak var backButton: UIButton! @IBOutlet weak var forwardButton: UIButton! init(delegate: CustomAccessoryProtocol){ super.init() self.delegate = delegate } required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) fatalError("init(coder:) has not been implemented") } override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?) { super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil) let customNib = UINib(nibName: "CustomAccessory", bundle: nil) accessoryView = customNib.instantiateWithOwner(self, options: nil)[0] as! UIView } @IBAction func buttonPress(sender: AnyObject) { delegate.controlButtonPressed(sender.tag!) } override func viewDidLoad() { super.viewDidLoad() view.addSubview(accessoryView) } }
我在NSWindowController的代码中遇到了同样的问题:
init() { super.init() }
我改成了:
convenience init() { self.init() }
我认为Apple比以前更严格地执行便利性。
- 如何使用jQuery Mobile添加捏/缩放行为?
- 在DetailView中有多个ViewController的UISplitView(storyboard)
- 在input的Swift中,在textfield中格式化货币
- 自动调整自定义的UITableViewCell和标签中的文字
- 当一个子类重写一个方法时,我们如何确保在编译时超类的方法实现被调用?
- UIView animateWithDuration和UIProgressView setProgress
- 为什么我的cordovaWebView有一个额外的20像素的滚动?
- iAd冻结了Sprite Kit应用程序
- 如何使用LoadHTMLString方法在WebView中加载大型HTMLstring?