ios - 尝试对 UITableView 中的单元格重新排序时获取 '-[__NSCFArray removeObjectAtIndex:]: mutating method sent to immutable object'

标签 ios uitableview afnetworking

我正在使用 AFNetworking 获取 UITableView 单元格中的 JSON 数据。我已将数组声明为 NSMutableArray,但我仍然收到 -[__NSCFArray removeObjectAtIndex:]: mutating method sent to immutable object 错误,每当我试图重新排序单元格。

这是我用于重新排序的逻辑 -

-(void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath
 toIndexPath:(NSIndexPath *)toIndexPath {

NSString *item = [self.jobsArrayFromAFNetworking objectAtIndex:fromIndexPath.row];
[self.jobsArrayFromAFNetworking removeObject:item];
[self.jobsArrayFromAFNetworking insertObject:item atIndex:toIndexPath.row];


}

我试图查找之前正在回答的解决方案,但无法理解。谁能告诉我这里出了什么问题?谢谢!

最佳答案

您的@property jobsArrayFromAFNetworking 已使用 NSArray 初始化或声明为 copy

两者都会导致此错误消息,因为支持 ivar 会指向一个(不可变的)NSArray

如果您将属性声明为 NSMutableArray 类型,请使用 strong 作为存储修饰符而不是 copy

关于ios - 尝试对 UITableView 中的单元格重新排序时获取 '-[__NSCFArray removeObjectAtIndex:]: mutating method sent to immutable object',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17594310/

相关文章:

ios - AFJSONRequestOperation 不更新 block 外的内容

ios - 在不使用 ASIHTTPRequest 的情况下在 iOS 中下载整个网页

ios - 将 PHAsset 转换为 UIImage 后设置 UiButton 图像

ios - UISplitViewController:UISplitViewControllerDisplayModeAllVisible 的主视图中的顶部布局指南错误

ios - 在 Xcode 5 中开发的 iPhone 应用程序,在 iPad 上运行时不显示图标和启动图像

iphone - 在 UITableView 中选择 UIImage

ios - 如何重新加载 tableview 的特定部分

ios - Google身份验证后的React-Native网络请求不携带身份验证cookie

ios - CustomCell 未反射(reflect)在 UITableView 中

ios - 在 iOS 上从 ASIHTTPRequest 转换为 AFNetworking