我有一个UITableView
,每一行都是array
中plist
的名称。这意味着当我尝试使用普通滑动删除方法时:
[tableView deleteRowsAtIndexPaths:indexPaths withRowAnimation:UITableViewRowAnimationAutomatic]
该应用程序崩溃。如何告知滑动删除以在plist中找到数组并将其删除?
答案 0 :(得分:1)
仅删除表视图中显示的行是不够的。您还必须从数据数组中删除该项目。据推测,你有NSMutableArray
在开头读入plist。 (如果只是NSArray
,请将其更改为可变!)
删除行后,删除数组中的数据
[myDataArray removeObjectAtIndex:indexPath.row];
如果你有部分,你首先必须弄清楚你的对象在数组中的位置,但原理是相同的。
现在,您可以通过使用数据数组的内容覆盖现有plist来选择性地将更改写入磁盘。