当我尝试使用声明为@IBAction
的UIImageView创建一个数组时,我收到“无法在属性初始化程序中使用实例成员,属性初始化程序在self可用之前运行”编译器错误。我该如何解决这个问题?
答案 0 :(得分:0)
您将imageViews声明为常量(单独的问题),然后在viewDidLoad中重新声明它。你不应该重新声明它(或者你可以在viewDidLoad中声明一次)
答案 1 :(得分:0)
正如错误所解释的那样,当您在类级别的方法之外初始化属性时,您无法使用实例成员。将数组初始值设定项保留在类级别,并在方法中将属性添加到其中。
var imageViews = [UIImageView]()
override func viewDidLoad(){
imageViews = [pos_1,pos2]
//or
imageViews.append(pos_1)
imageViews.append(pos_2)
}