我升级到Xcode 8 beta 6后,遇到了非常奇怪的错误。

4

我刚升级到 Xcode 8 beta 6,结果出现了大量错误 (并不意外),我已经解决了大部分问题,但有两个错误我不确定如何修复。

其中一个错误是 Method does not override any method from its superclass

override func prepare(for segue: UIStoryboardSegue, sender: AnyObject?) {
    if(segue.identifier == "***"){

    }
}

我因此得到了这个错误:init已重命名为init(describing:)

return String(self.type)

请查看 SE-0116SE-0089 - Hamish
3个回答

11

Xcode 8中方法签名已更改,现在它如下所示:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
   // Code here
}

1
我认为上面的fun应该改成func。以防有人复制粘贴这段代码。感谢您的答案;我会记得在将来检查方法签名是否有更改。 - liquidki

9

您应该使用

String(describing: self.type)

而不是

String(self.type)


3

基本上,在大多数函数中,AnyObject现在变成了Any。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接