为什么我的图像不被附加到数组?

我有一个简单的模型,其中包括:

var photos: [UIImage]? 

我已经将文件zombies.jpg作为文件复制到项目中。 然后,在表视图控制器所需的init中,我想加载一个虚拟logging。 我可以定义所有的string和NSDate属性,但是当我尝试追加照片时:

 dummyRecord1.photos?.append(UIImage(named: "zombies.jpg")!) print(UIImage(named: "zombies.jpg")) print(dummyRecord1.photos) 

控制台显示图像在那里,但它永远不会进入数组:

 Optional(<UIImage: 0x7f8fd14b4c40>, {2592, 1936})nil 

您已初始化照片数组,并且您正在使用条件展开,这意味着如果它不是无追加,但您的照片数组是零,所以它不会追加一个照片在无数组。 你应该做这样的事情var photos:[UIImage] = []

最好这样做:

 var photos : [UIImage?] = [] 

它初始化一个空的数组,准备存储UIImage对象。