Здесь есть два подхода. Либо добавьте метод -initWithJSONString:
к вашим объектам данных и передайте JSON непосредственно им для разбивки, либо добавьте метод -initWithAttributes:
, который использует словарь, который вы получаете от разбора JSON. Например:
- (id)initWithAttributes:(NSDictionary *)dict
{
// This is the complicated form, where you have your own designated
// initializer with a mandatory parameter, just to show the hardest problem.
// Our designated initializer in this example is "initWithIdentifier"
NSString *identifier = [dict objectForKey:MYIdentifierKey];
self = [self initWithIdentifier:identifier];
if (self != nil)
{
self.name = [dict objectForKey:MYNameKey];
self.title = [dict objectForKey:MYTitleKey];
}
return self;
}
Создание -initWithJSONString:
метода было бы очень похоже.
Я думаю, что initWithAttributes будет делать, но структура отображения будет слаще ... Спасибо! – Andi
@ Andi: Правда, но иногда, каркас излишне, когда вам просто нужно что-то легкое и быстрое, чтобы осветить основы. Спасибо, Роб! Использование метода objectForKey: в инициализаторе - отличный способ! –