Представьте себе объект CoreData (например, с именем searchEngine
). NSManagedObjectContext
управляет некоторыми «экземплярами» этого объекта.
Конечный пользователь сможет выбрать свой "standard searchEngine"
с помощью NSPopupButton
. selected object
NSPopupButton должен быть привязан к NSUserDefaults.
Проблема:
1)
@ попробовать {сохранить}
a)
If you try to save the selected "instance" directly to NSUserDefaults there comes something like this:-[NSUserDefaults setObject:forKey:]: Attempt to insert non-property value ' (entity: searchEngine; id: 0x156f60 ; data: { url = "http://google.de/"; someAttribute = 1; name = "google"; })' of class 'searchEngine'.
b)
If you try to convert the "instance" to NSData comes this:-[searchEngine encodeWithCoder:]: unrecognized selector sent to instance 0x1a25b0Итак, есть идеи, как получить эти объекты в данных, совместимых с plist?
2)
@ попробовать {registerDefaults}Обычно метод
registerDefaults:
реализован в+ (void)initialize
. Проблема здесь в том, что этот метод вызывается до того, как CoreData загрузит сохраненные сущности из своей базы данных. Итак, я не могу установить значение по умолчанию для несуществующего объекта, верно?
Я знаю, длинные вопросы ... но: попробуйте {[я предоставлю: подробности]}; D