2016-11-08 2 views
0

Ich habe eine Tabellenansicht und jede Zeile hat ein Symbol. 90% der Zeilen haben das gleiche Symbol.iOS: Leistung des Neuladens UIImage (Name: ...)

Im cellForRowAtIndexPath Methode laden ich das Bild von einem Vermögen Ordner wie folgt aus:

var cellImage = UIImage(named: "MyImage") 

Enthält diese ein Leistungsproblem darstellen? Ist das Betriebssystem irgendwie intelligent genug, dass es jedes Mal dasselbe Bild gibt? Wäre es besser, wenn ich das Bild einmal geladen und in einer Klassenvariablen gespeichert und jedes Mal zugewiesen hätte?

+0

Solange Sie Sie keine Probleme sehen: Meinung basiert. – shallowThought

Antwort

1

UIImage ‚s named: API tatsächlich DOES eine Art von Caching tun.

Wenn Sie UIImage's documentation aussehen, heißt es:

Verwenden Sie die init(named:in:compatibleWith:) Methode (oder die init(named:) -Methode) ein Bild von einer Bild-Asset oder Bilddatei der in Ihrem App Hauptbündel zu erstellen (oder ein anderes bekanntes Bündel). Da diese Methoden die Bilddaten automatisch zwischenspeichern, werden sie besonders für Bilder empfohlen, die Sie häufig verwenden, .