я использую этот код, чтобы проверить, существуют ли какие-либо объекты в моем NSMutableArray
если да, я удаляю их все, но происходит сбой, хотя есть объекты, почему?
if([NSMutableArray1 count]==1)
{
[poemoptionslist removeAllObjects];
}
if ([NSMutableArray1 count]==0)
{
[poemoptionslist addObject: final1];
}
КОНСОЛЬНЫЙ ВЫХОД
2010-10-18 03: 42: 13.166
app1 [33398: 207] * Завершение приложения
из-за неисследованного исключения
'NSInternalInconsistencyException',
причина: '- [__ NSCFArray
removeObjectAtIndex:]: метод мутирования
отправлено неизменному объекту
* стек вызовов при первом броске: (0 CoreFoundation
0x02e55b99 исключение препроцесс + 185
1 libobjc.A.dylib
0x02fa540e objc_exception_throw + 47
2 CoreFoundation
0x02e0e238 + [NSException
поднять: формат: аргументы:] + 136 3
CoreFoundation
0x02e0e1aa + [NSException
поднять: формат:] + 58 4
CoreFoundation
0x02e4d3c1 - [__ NSCFArray
removeObjectAtIndex:] + 193 5
CoreFoundation
0x02dfe973 - [NSMutableArray
removeAllObjects] + 83 6
poemsoflove
0x0004dc8d - [submitpoem submitpoem:] +
18560 7 UIKit
0x003b77f8 - [UIApplication
sendAction: to: from: forEvent:] + 119 8
UIKit
0x00442de0 - [UIControl
sendAction: to: forEvent:] + 67 9
UIKit
0x00445262 - [UIControl (внутренний)
_sendActionsForEvents: withEvent:] + 527 10 UIKit
0x00443e0f - [UIControl
прикосновенияВокруглено: withEvent:] + 458 11
UIKit
0x003db3d0 - [UIWindow
_sendTouchesForEvent:] + 567 12 UIKit
0x003bccb4 - [UIApplication sendEvent:]
+ 447 13 UIKit 0x003c19bf _UIApplicationHandleEvent +
7672 14 GraphicsServices
0x033e6822 PurpleEventCallback + 1550
15 CoreFoundation
0x02e36ff4
__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION
+ 52 16 CoreFoundation 0x02d97807 __CFRunLoopDoSource1 + 215
17 CoreFoundation
0x02d94a93 __CFRunLoopRun + 979 18
CoreFoundation
0x02d94350 CFRunLoopRunSpecific + 208
19 CoreFoundation
0x02d94271 CFRunLoopRunInMode + 97 20
GraphicsServices
0x033e500c GSEventRunModal + 217 21
GraphicsServices
0x033e50d1 GSEventRun + 115 22 UIKit
0x003c5af2 UIApplicationMain + 1160
23 стихотворения
0x00002728 основной + 102 24 стихотворения
0x000026b9 начало + 53 25 ???
0x00000001 0x0 + 1) завершить вызов
после броска экземпляра
Программа «NSException» получила сигнал:
«SIGABRT».
Ребята, нет NSArray!
Я сохраняю в NSUSerdefaults, как это:
if ([mutable1 count] == 0)
{
[mutable1 addObject: final1];
}
NSUserDefaults *list =[NSUserDefaults standardUserDefaults];
[list setObject:mutable1 forKey:@"favorites"];
[list synchronize];
и я загружаю данные вот так
NSUserDefaults *prefs1 =[NSUserDefaults standardUserDefaults];
if ( [prefs1 objectForKey:@"favorites"] != nil)
{
mutable1 = [[NSMutableArray alloc] init];
mutable1 = [prefs1 objectForKey:@"favorites"];
и я получаю объекты! затем, когда он запускает объекты removeallob, он падает!