2010-08-22 2 views
6

У меня есть кнопка истории истории, которая очищает данные в plist. Теперь загрузка прекрасна; Я загружаю его в массив.set array empty

Могу ли я просто использовать:

self.dataClear = NULL; 

и сохранить обратно массив Plist, чтобы очистить его? Так что я могу использовать

if([self.dataClear count] == 0)//if plist is empty 

проверить?

ответ

14

Возможно, вам было бы лучше использовать NSMutableArray и называть removeAllObjects, вместо этого NULLing; в противном случае там не будет никакого объекта для ответа на ваше сообщение count, так как существует концептуальная разница между «пустым массивом» и «без массива вообще».

+0

Хотя измененный массив, скорее всего, подходит лучше, отправка сообщений на «nil» в этом случае прекрасна - см., Например, [Здесь] (http://stackoverflow.com/questions/156395/sending-a-message-to-nil). –

+0

Действительно, хотя я хотел подчеркнуть это различие между «nil» и «empty», поскольку я считаю, что «count» работает, как ожидалось, в некоторой степени случайным. Тем не менее, ваш вопрос верен. – ig2r

+1

i установлен в нуль, он не работает, используйте removeALlobjects, и он работает. – Stefan