美文网首页
swift 4.0 关于nil的坑-->Nil is not c

swift 4.0 关于nil的坑-->Nil is not c

作者: 纳兰怮翌 | 来源:发表于2018-07-09 22:42 被阅读0次

最近写的项目是用的swift4.0来写的,但是坑不是一般的多,但是相较于oc来说有好处也有不好之处,因为oc有runtime机制,下面我就说说swift的一个关于nil的坑,话不多说,上源代码

//我在一个自定义的uiview里面创建一个初始化方法为
init(iconImage:String,message:String) {
     super.init(frame:CGRect.zero)
    self.frame = CGRect(x: 0, y: 0, width: windowW, height: windowH)
}
//在vc中初始化这个view

let alertView:CCarAlertView = CCarAlertView.init(iconImage:nil, message: "您还未登录,请先登录/注册")

然后编译的时候就出现下面这个错误
Nil is not compatible with expected argument type 'String'
解决办法

//我在一个自定义的uiview里面创建一个初始化方法为
init(iconImage:String?,message:String) {
     super.init(frame:CGRect.zero)
    self.frame = CGRect(x: 0, y: 0, width: windowW, height: windowH)
}
//在vc中初始化这个view

let alertView:CCarAlertView = CCarAlertView.init(iconImage:nil, message: "您还未登录,请先登录/注册")

然后判断iconImage是否为空的时候需要这样做
if (iconImage?.isEmpty) != nil{
print("iconImage不为空")
}else{
print("iconImage为空")
}
这个?和!我个人认为很烦人

相关文章

网友评论

      本文标题:swift 4.0 关于nil的坑-->Nil is not c

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