我正在使用以下IB Action从Core Data和TableView中删除数据:
//Events
@IBAction func btnDelTask_Click(sender: UIButton){
let appDel: foodforteethAppDelegate = UIApplication.sharedApplication().delegate as foodforteethAppDelegate
let context: NSManagedObjectContext = appDel.managedObjectContext
/*
let request = NSFetchRequest(entityName: "Food")
myList = context.executeFetchRequest(request, error: nil)
*/
if let tv = tblTasks {
var bas: NSManagedObject!
for bas: AnyObject in myList
{
context.deleteObject(bas as NSManagedObject)
}
myList.removeAll(keepCapacity: false)
tv.reloadData()
}
}
所以当我在模拟器中运行它并单击按钮删除时,一切似乎都很好。桌子清除了。我可以在应用程序中来回切换到它的不同部分并返回到桌面,一切都仍然清晰。
但是,如果我重新启动模拟器(不重置内容和设置),表中先前删除的行会突然重新出现:/
为什么会这样?我不认为它实际上是通过注释掉'myList.removeAll(keepCapacity:false)'来删除我发现的核心数据中的所有内容,然后它甚至无法正常工作而且没有删除。
任何帮助?