2017-01-23 4 views

Antwort

2

Sie versuchen, ein Array mit UIImage Objekte zu deklarieren und dann mit Null zu instanziieren. Versuchen Sie

var images = [UIImage?](repeating: nil, count: 10) 

und dann behandeln Sie Bilder als Null, wenn Sie darauf zugreifen.

Wenn Sie bereits wissen, wie Sie Bilder bevölkern werden, können Sie die Map-Funktion für Arrays wie so verwenden:

var images = (0..<10).map { (i) -> UIImage in 
    return UIImage() // however you are trying to get the UIImage 
} 
+0

@LeoDabus Auch das ist okay! Ich habe nur den "optionalen" Vorschlag gegeben, um effizienter zu sein. Sie möchten keine Objekte zuordnen, die sofort verworfen werden. –

+0

Ich denke, der richtige Ansatz wäre, einfach ein leeres Array 'var images = [UIImage]()' zu erstellen und dann die neuen Bilder in seine Schleife einzufügen oder wie du es mit map oder forEach '(0 .. <10) vorgeschlagen hast. .forEach {images.append (UIImage (mit dem Namen: "image \ ($ 0)") ?? UIImage())} ' –

Verwandte Themen