2013-12-12 64 views
0

我:从阵列中删除对象犯规删除任何

self.path = [self pathByCopyingFile:@"Notes List.plist"]; 
self.data = [[NSMutableDictionary alloc] initWithContentsOfFile:self.path]; 
self.notes = [self.data objectForKey:@"Notes"]; 

然后在一个按钮(按钮方法肯定会被调用):

NSString *title = self.navigationItem.title; 
     //Filter notes array by title 
     NSPredicate *pred = [NSPredicate predicateWithFormat:@"Title =[cd] %@", title]; 
     NSArray * titleArray = [self.notes filteredArrayUsingPredicate:pred]; 

     //delete all the notes with the old title name 
     [self.notes removeObject:titleArray]; 
     NSLog(@"%@", self.notes); 

在这一点上,self.notes仍包含项目我不知道他们为什么被剔除

+0

因为NSArray不可变吗? http://stackoverflow.com/questions/7426570/remove-object-from-nsarray – Rob

+0

我的“self.notes”是可变的 – user3001526

回答

3

你正试图从数组中移除一个数组。这不是你想要的。我相信您的目标是从您的notes阵列中删除titleArray中的所有对象。

而这甚至不认为self.notes可能是NSArray而不是NSMutableArray

如果self.notes是可变的,您可以使用removeObjectsInArray:

[self.notes removeObjectsInArray:titleArray]; 
+0

哦天哪呀,谢谢你的 – user3001526