遇到了编译报错:no method declared with objective-c selector error

参考 Stack Overflow 的帖子 http://stackoverflow.com/questions/36160075/xcode-7-3-swift-2-no-method-declared-with-objective-c-selector-warning 

Swift 2.2 / Xcode 7.3 has a new way to use selector:Selector("funcName")was changed to#selector(ClassName.funcName) Have a look at https://github.com/apple/swift-evolution/blob/master/proposals/0022-objc-selectors.md

这是Swift 3中的新写法,以前的 Selector("Start") 应改为 #selector(YOUR_CLASS.Start)

Replace Selector("Start") with#selector(YOUR_CLASS.Start) where YOUR_CLASS = class of target in given context.

当然,这个变化我个人感觉对我这么一个初学者还是很难适应的。原因就在于将以前的 Selector() 改为 #selector() 的时候,如果让Xcode 自动修改括号中的内容不一定对。在网上搜又很难搜到可用的Swift3 格式的相应代码来手动更改 #selector 形式。

现在我基本上只能是遇到这个情况再具体搜代码了。每次就祈祷Xcode 自动改完就是对的。 

posted on 2017-01-12 15:55  锅仔排骨  阅读(606)  评论(0编辑  收藏  举报