2014-11-29 1 views
0

У меня есть этот класс:Получение информации из NSObject

@interface Item : NSObject { 

    NSString *name; 
    NSString *description; 
} 

@property (nonatomic, copy) NSString *name; 
@property (nonatomic, copy) NSString *description; 

+ (id)ItemWithDescription:(NSString*)description name:(NSString*)name; 

И я использую следующий изменяемый массив, чтобы сохранить полный список всех пунктов:

@property (strong,nonatomic) NSMutableArray *ItemArray;  

С кодом ниже, в файл .m, вставить новый элемент в массиве

[self.ItemArray addObject: [Item ItemWithDescription: @“aDescription” name: @“aName”]]; 

До здесь все нормально, но сейчас проблема в том, что я не KNO w как извлечь элемент «description» (как NSString) нужного элемента в массиве (скажем, в позиции [0]). Кто-нибудь знает правильный синтаксис для использования?

+1

FYI - не называйте свойство 'description'. Это вызывает проблемы с методом 'description'' NSObject'. – rmaddy

+0

Кроме того, нет необходимости явно объявлять ivars для двух свойств (или использовать '@ synhesize' в файле .m). Найдите современный учебник. – rmaddy

ответ

1
Item *item = (Item *)self.ItemArray[0]; 
NSLog(@"%@", item.description); 
+0

FYI - '' (Item *) 'cast не требуется. – rmaddy

+0

Согласен, это не обязательно. Обычно я предпочитаю кастинг, когда знаю, чего ожидать объект. – sha

+0

Ваш комментарий о поле 'description' находится на месте. Я потратил один раз много времени на отладку проблемы, вызванной этим. – sha

 Смежные вопросы

  • Нет связанных вопросов^_^