iPhone - сохранить состояние UIImageView - PullRequest
2 голосов
/ 12 июня 2009

Я создал подкласс UIImageView и обрабатываю касания его объектов внутри самого подкласса.

Теперь, когда пользователь собирается выйти из приложения, я хочу сохранить состояние изображений. И поскольку на изображениях может быть несколько преобразований (я сохраняю все преобразования в массиве), я хочу иметь возможность сохранять эти объекты в applicationWillTerminate.

Есть ли способ сохранить эти объекты? Или я должен сохранить все индивидуально? Если я это сделаю, как мне сохранить все преобразования, которые произошли в объектах просмотра изображений, до выхода пользователя?

Спасибо.

1 Ответ

1 голос
/ 12 июня 2009

UIImageView соответствует NSCoding. Вам нужно будет реализовать encodeWithCoder: в вашем подклассе UIImageView, чтобы позволить его сериализацию. Вы используете переданный кодер для сериализации важных переменных-членов, в этом случае ваши изображения затем вызывают суперкласс 'encodeWithCoder:.

Вы делаете обратное в initWithCoder: и вы возвращаете свое первоначальное состояние.

Если ваши изображения являются экземплярами UIImage, у вас будет немного больше работы, поскольку она не соответствует NSCoding. Возможно, вам удастся преобразовать данные изображения в объект NSData и кодировать его в зависимости от ваших требований. Вот пример того, как это можно сделать: http://www.nixwire.com/getting-uiimage-to-work-with-nscoding-encodewithcoder/

Взгляните на Руководство по программированию архивов и сериализаций для какао: http://developer.apple.com/iphone/library/documentation/Cocoa/Conceptual/Archiving/Archiving.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...