您有两个问题(并且没有正则表达式!)
1. 您没有创建数组。你需要做:
var logoImages: [UIImage] = []
or
var logoImages: Array<UIImage> = []
or
var logoImages = [UIImage]()
or
var logoImages = Array<UIImage>()
2. 如果你想向数组添加新对象,你应该使用Array.append()
或一些等效的语法糖:
logoImages.append(UIImage(named: "logo.png")!)
or
logoImages += [UIImage(named: "logo.png")!]
or
logoImages += [UIImage(named: "logo.png")!, UIImage(named: "logo2.png")!]
您需要附加到数组,因为(摘录来自文档 https://developer.apple.com/library/prerelease/ios/documentation/swift/conceptual/swift_programming_language/CollectionTypes.html#//apple_ref/doc/uid/TP40014097-CH8-XID_135):
您不能使用下标语法将新项目附加到
大批。如果您尝试使用下标语法来检索或设置值
对于超出数组现有边界的索引,您将
触发运行时错误。但是,您可以检查索引是否有效
在使用它之前,将其与数组的 count 属性进行比较。除了
当 count 为 0(表示数组为空)时,最大有效索引
在数组中将始终为 count - 1,因为数组的索引来自
零。
当然,如果可能的话,您总是可以简化它:
var logoImage: [UIImage] = [
UIImage(named: "logo1.png")!,
UIImage(named: "logo2.png")!
]
edit:请注意,UIImage 现在有一个“失败”初始化程序 https://developer.apple.com/swift/blog/?id=17,这意味着它返回一个可选值。我已经更新了所有代码以反映此更改以及数组语法的更改。