36 *_*ign 18 key-value-observing ios swift
我正在使用与xCode7 Beta 2兼容的代码.刚刚获得Beta 3,现在我遇到了这个似乎是xCode错误的问题?
对于我的一个公共课......
override public func observeValueForKeyPath...
Run Code Online (Sandbox Code Playgroud)
错误:方法不会覆盖其超类中的任何方法
所以我拿出"覆盖":
public func observeValueForKeyPath
Run Code Online (Sandbox Code Playgroud)
错误:方法与具有相同Objective-C选择器的超类NSObject中的方法冲突哈哈!我被第一个错误骗了.不会编译任何一种方式.
有什么帮助吗?
Yev*_*nin 30
如果复制定义NSKeyValueObserving.h
,您的覆盖将如下所示.
iOS SDK 9.0
override func observeValueForKeyPath(keyPath: String?, ofObject object: AnyObject?, change: [String : AnyObject]?, context: UnsafeMutablePointer<Void>) {
//...
}
Run Code Online (Sandbox Code Playgroud)
在iOS SDK 9.0之前
override func observeValueForKeyPath(keyPath: String, ofObject object: AnyObject, change: [NSObject: AnyObject], context: UnsafeMutablePointer<Void>) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
注意:对于像这样的方法,您通常可以按下Cmd+Shift+O
并直接进入快速打开...弹出字段,其中可以复制/粘贴任何定义,Xcode将在项目/ SDK中搜索它.在这种情况下,请注意iOS范围.
归档时间: |
|
查看次数: |
4687 次 |
最近记录: |