Как сохранить NSMutableArray с UIImgeViews в директории документа iPhone - PullRequest
1 голос
/ 14 января 2010

У меня есть NSMutableArray, в котором хранятся несколько и меняющиеся суммы (поэтому я использую NSMutableArray) из UIImageView, которые я хочу сохранить, а также при обратной загрузке, когда мое приложение выходит и загружается. Кроме того, как мне тогда, после загрузки моего приложения, получить изображения viws из массива

Ответы [ 2 ]

0 голосов
/ 14 января 2010

Основные данные могут быть излишними. Я бы просто использовал архив изменяемого массива, как сказал Томен.

Обратите внимание, что UIImageView (и, как мне кажется, остальные представления) не поддерживают сериализацию из моего опыта. Они только утверждают, что поддерживают протокол NSCoding, потому что initWithCoder используется с загрузкой файлов NIB. Я бы не пытался сохранить весь вид, я бы только сохранил изображения. Вам, вероятно, потребуется извлечь UIImage из UIImageView, затем получить CGImage из этого, а затем получить объект NSData для растрового изображения из этого. Кроме того:

Поскольку объекты изображений являются неизменяемыми, они также не обеспечивают прямой доступ к данным, лежащим в их основе. Однако вы можете получить объект NSData, содержащий представление данных изображения в формате PNG или JPEG, используя функции UIImagePNGRepresentation и UIImageJPEGRepresentation.

Для архивации NSMutableArray элементы в массиве должны поддерживать encodeWithCoder (что делает NSData), так что вы можете просто захотеть построить новый массив с объектами NSData.

0 голосов
/ 14 января 2010

Вы должны обратиться к Руководству по программированию Core Data и следовать там учебникам. Он научит вас сериализации и десериализации структур данных и представлений.

http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/CoreData/cdProgrammingGuide.html

...