获取错误将Mutating方法发送到不可变对象

时间:2013-09-12 09:33:10

标签: uitableview

我正在使用NSJsonSerilization来获取UITableView个单元格中的JSON数据。我已将数组声明为NSMutableArray。但我仍然得到

-[__NSCFArray removeObjectAtIndex:]: mutating method sent to immutable object error 

每当我试图删除单元格时,应用程序都会崩溃。

cell.nameLabel.text = [[jsonResults objectAtIndex:indexPath.row] objectForKey:@"FromProviderName"];

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
    [jsonResults removeObjectAtIndex:indexPath.row];
    [jsonTable reloadData];
}

我试图查找之前正在回答的解决方案,我正在做同样的事情。谢谢!

1 个答案:

答案 0 :(得分:0)

我希望您在获取请求结束时需要名为“mutableCopy”的函数。

jsonResults = (NSMutableArray*)[[cdc.managedObjectContext executeFetchRequest:fetchRequest error:&error] mutableCopy];

根据您的评论进行修改:

jsonResults = (NSMutableArray*)[[NSJSONSerialization JSONObjectWithData:data options:nil error:nil] mutableCopy];