我的应用程序中有 CoreData 设置,并且有一个具有属性“isSpecial”布尔值的实体。对于“isSpecial”为 true 的记录,我希望用户不能从显示的 UITableView 中删除这些记录。
那么我该怎么做呢?如何直接看到用户选择的单元格“isSpecial”?
假设您在表格视图上使用滑动来删除,最好使用
tableView:canEditRowAtIndexPath:
并且仅在 isSpecial
为 false 时才允许编辑。这将阻止用户点击删除按钮并且什么也不会发生
您可以为实体创建子类
NSManagedObject
(如果还没有的话),并覆盖 validateForDelete:
以检查对象的 isSpecial
属性。
您还应该调用 super 的实现,详见此处。
如果您想以编程方式删除它,您只需在尝试删除之前将
isSpecial
设置为 NO
。