迅速 - 编译的麻烦

时间:2016-06-02 14:30:43

标签: xcode swift

我目前正在使用swift进行编程并且有一个项目,但我一直都会遇到一些错误。 1错误说Nil与UIcolor类型不兼容。 代码是

super.init(texture: nil, color: nil, size:CGSizeMake(100, 50))

1 个答案:

答案 0 :(得分:1)

如果未使用可选颜色参数定义init,则您无法将nil传递给它。

可选后面有一个问号,这意味着它可以包含值或nil

let color: UIColor?

您可以阅读有关Optionals here

的更多信息
  

C或Objective-C中不存在选项的概念。 Objective-C中最接近的是从一个方法返回nil的能力,否则返回一个对象,nil意味着“缺少一个有效的对象。”但是,这仅适用于对象 - 它不适用于结构,基本C类型或枚举值。对于这些类型,Objective-C方法通常返回一个特殊值(例如NSNotFound)来指示缺少值。此方法假定方法的调用者知道有一个特殊值要测试并记得检查它。 Swift的选项让你可以指出任何类型都没有值,而不需要特殊的常量。