美文网首页
Swift错误收集

Swift错误收集

作者: flowerflower | 来源:发表于2018-05-03 17:18 被阅读76次

一、Declarations in extensions cannot override yet

图片.png
错误来由:

swift 语言版本升级而产生的问题,从 3.0 升到 4.0 之后,如果你有重写 extension 中的方法,就会出现这个报错。官方在swift 4.0 中不推荐重写 extension 中的方法

解决方式:

在基类中被重写的方法前面加上 @objc就可以了。

//3.0版本
extension BaseUIViewController{
   func setupUI()  {
        // 基类的实现代码
    } 
}

//4.0版本
extension BaseUIViewController{
 @objc  func setupUI()  {
        // 基类的实现代码
    }
}

二、Type 'Any' has no subscript members

图片.png

在Sift4中参数都是Any类型的,而在Swift3中参数类型是AnyObject


Sift4中参数类型.png

在swift3中是没有问题的,但是在Swift4中必须将json从更改AnyObject为Any。必须将Any投射到AnyObject。

三、Swift使用YYModel需注意:

因为YYModel是OC的框架,所以需要在Model中加上@objcMembers,否则加载不到数据

>没加之前
图片.png
>加之后
图片.png 图片.png

四、用OC写的项目,然后pod中导入Swift库时报错

Snip20180503_27.png

参考解决方式

有人在stack overflow贡献出这样的答案

图片.png
我去 结局咋么还是一样。不服 。。。操作了咋还给我报这个 。。

于是手抖 发现 只要修改了Swift Language Version,再直接在终端 cd到自己的工程的路径 执行一次pod install即可

经历过程: 我只对TARGETS->Build Settings ->Swift Language Version 修改成了4.0,然后再cmd+shift+k 编译还是报错 ——> cmd+Q -> 打开项目->cmd+shift+k 还是不行->最后再cd到自己的工程的路径 执行一次pod install即可 ->编译成功

相关文章

网友评论

      本文标题:Swift错误收集

      本文链接:https://www.haomeiwen.com/subject/kwvvkftx.html