2014-01-26 2 views
-1

Использование AddObject добавляет объект в два разаNSMutableArray AddObject добавления object.text дважды

AppDelegate *appdelegate = [[UIApplication sharedApplication] delegate]; 
     NSLog(@"LOG1 %@", object.text); 
     [appdelegate.mutarray addObject:object.text]; 
     NSLog(@"LOG2 %@", appdelegate.mutarray); 

LOG1 возвращает: Значение LOG1 Log2 возвращает: log2 ( "значение", "значение" )

почему он добавляется дважды? removeObject удаляет и я могу удалить только один

+1

Задать массив непосредственно перед добавлением объекта. – rmaddy

+0

Необходимо увидеть код, в котором вы извлекаете объект, и код, в котором вы удаляете объект. – jww

ответ

0

Потому что вы впервые добавили свое значение в NSMutableArray, не удаляя значения из NSMutableArray, которые часто добавляются. что до сих пор он добавлял параллельное дублирующее значение. перед добавлением нового значения удалите весь массив.

if(appdelegate.mutarray.count!=0) 
[appdelegate.mutarray removeAllObject]; 

[appdelegate.mutarray addObject:object.text]; 
+0

removeAllObjects works [не дублирует и выводит только одно значение], но я не хочу удалять все, потому что я хочу сохранить остальные избранное. Я попробовал [appdelegate.mutarray removeObject: object.text]; но только для одного любимого – valmassoi

+0

использовать индекс, основанный на удалении как removeObjectAtIndex – codercat

+0

, так что, видимо, я добавил его где-то раньше. спасибо вам – valmassoi

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