2013-04-03 2 views
0

Я пытаюсь передать объект NSDictionary на мой NSObject Class, так что я могу использовать элементы объекта в моем текущем viewController, однако у меня возникли проблемы с его инициализацией.Как инициализировать класс NSObject

Это то, что мой заголовок Метод класса NSObject выглядит

NSObjectClass.m

- (GetSeriesDictionary *)assignSeriesDictionaryData:(NSMutableDictionary*)seriesDictionaryData { 

    // Initialize values 
    seriesID = [[seriesDictionaryData valueForKey:@"SeriesID"] integerValue]; 

    seriesType = [[seriesDictionaryData valueForKey:@"SeriesType"] integerValue]; 

//... 

Затем внутри контроллера зрения я пытаюсь использовать этот NSObject как этот

ViewController .m

// inside random method 
    GetSeriesDictionary *getSeriesObj = [[GetSeriesSeriesDictionary alloc] init]; 
    getSeriesObj = (GetSeriesSeriesDictionary *)series; // this is where I am having the problem 

    NSLog(@"%i", getSeriesObj.seriesID); 
//.. 

Но тогда я возрождает эту ошибку

-[__NSDictionaryM seriesID]: unrecognized selector sent to instance 0x1e8de940 

Так что я хотел бы получить некоторую помощь парафирования мой NSObject, так что я могу называть элементы из объекта, как

getSeriesObj.seriesID 

ответ

2

Вы не можете просто бросить объекты. Вам нужно позвонить assignSeriesDictionaryData:, который вы создали.

// inside random method 
GetSeriesDictionary *getSeriesObj = [[GetSeriesSeriesDictionary alloc] init]; 
[getSeriesObj assignSeriesDictionaryData:series]; 

NSLog(@"%i", getSeriesObj.seriesID); 
//.. 

Кроме того, как вы могли заметить, у меня не было NSObjectClass. Это сопоставление лучше всего подходит для самого GetSeriesDictionary (вы можете создать собственный init, который делает это).

+0

Хорошо, спасибо за ответ, одно, хотя вы можете объяснить последнее предложение в своем ответе ... Я не совсем понимаю его: (не уверен, что вы подразумеваете под отображением и т. Д. – HurkNburkS

+0

Я имел в виду преобразование словарного объекта в ваш пользовательский Я не понял, почему вы создали «NSObjectClass». Вы можете поместить метод 'assignSeriesDictionaryData:' в класс 'GetSeriesDictionary', и вместо возврата нового экземпляра просто установите значения для текущего. –

+0

ahh Я понимаю. Ну, причина, по которой я создал объект, - это преобразовать данные в их правильные типы данных .. также некоторые из элементов abit weird как 5; 5; 5; 5; 5, и в этом случае этот NSObject будет помещать эти типы элементов в массивы и т. д. – HurkNburkS

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