Что я могу сделать с типом атрибута Transformable в Core Data на iPhone? - PullRequest
56 голосов
/ 10 июня 2010

Есть этот Трансформируемый тип данных для атрибутов. Для чего это? Есть хорошие примеры?

Я бы хотел поиграть с этим. Так что после поиска я наткнулся на это: NSValueTransformer. Кажется, что-то мне нужно для этого.

Так с чего бы мне начать? Например, если бы я хотел сохранить объект UIColor, я бы сделал для этого преобразователь?

Что именно эта вещь трансформирует в или из? NSData? И должен ли объект, который я передаю трансформатору, следовать какому-либо протоколу?

1 Ответ

76 голосов
/ 16 июня 2010

Преобразуемые атрибуты полезны для хранения нестандартных типов объектов в Базовых данных.Например, я предоставляю код в этом ответе , который позволяет вам хранить UIImages в качестве атрибута в Базовых данных.Данные изображения преобразуются в и из экземпляра NSData, который содержит представление PNG изображения.Все это прозрачно для вас обрабатывает пользовательский NSValueTransformer.

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

...