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