2013-08-15 5 views
1

У меня есть NSMUtableArray, который я пытаюсь загрузить из хранилища Core Data (в хранилище есть достоверные данные); это код:Невозможно загрузить NSMutableArray из хранилища CoreData

[unsortedArray addObject:storedServices.aCustomServices1]; 
    [unsortedArray addObject:storedServices.aCustomServices2]; 

Массив определяется как:

@property (nonatomic, retain) NSMutableArray *unsortedArray; 

Я могу загрузить массив, используя статические данные, которая работает:

 unsortedArray = [NSMutableArray arrayWithObjects: 
        NSLocalizedString(@"Property1",nil), 
        NSLocalizedString(@"Property2",nil),nil]; 

Проблема заключается в том, хотя там действует данных в хранилище компакт-дисков, массив остается пустым. Я искал Google и SO, но ничего не нашел. Почему я не могу загрузить из хранилища Core Data?

+1

Вы не упомянули, что такое точная проблема. Исключение? Пустой массив? – trojanfoe

+0

К сожалению ... извините ... Я только что обновил вопрос ... – SpokaneDude

+0

Что вы пытаетесь сделать, это дает вам нежелательные результаты? Ваш фрагмент кода сообщает нам, что вы ** не делаете **. Какой код вы используете, это не работает? –

ответ

2

Я возьму пунт, которого вы не выделили unsortedArray. Попробуйте:

self.unsortedArray = [NSMutableArray array]; 
[self.unsortedArray addObject:storedServices.aCustomServices1]; 
[self.unsortedArray addObject:storedServices.aCustomServices2]; 

Это предполагает, что вы есть методы unsortedArray геттер/сеттер, которые соответствуют обычной практике управления памятью MRR. Это так же просто, как использование @synthesize unsortedArray (хотя более новые версии clang делают это для вас, я все равно явно добавляю его).

Обратите внимание, что:

self.unsortedArray = [NSMutableArray array]; 

Должно быть в вашем методе init.

+0

Невероятно! Не могу поверить, что я что-то забыл! Большое вам спасибо ... Я потратил на это 4 часа; Я действительно ценю твою помощь. – SpokaneDude

+0

@ spokane-dude Старые всегда лучшие: D (я имею в виду старые проблемы, а не старые кодеры) ... – trojanfoe

+0

Относится ко мне - мне будет 71 год в этом году ... были с 1966 года (работал над первым IBM 360, поставленным в Лос-Анджелесе) ... как это делается для того, чтобы быть старым? : D – SpokaneDude

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