gpt4 book ai didi

ios - 如何在 Swift 中从 Core Data 中删除多个不同的数据?

转载 作者:行者123 更新时间:2023-11-30 14:16:30 24 4
gpt4 key购买 nike

我有包含五个对象的核心数据。它由四个 String 和一个 NSData (UIImage) 组成。我将它们保存在核心数据中。然后加载 UIViewController ,我想从核心数据中删除它们,但我得到了不同的错误。我尝试了不同的方法,但它对我没有帮助。如何删除这些数据?

var name: String!
var text: String!
var image: UIImage!
var url: String!
var data: String!

func deleteAll() {
var appDel: AppDelegate = (UIApplication.sharedApplication().delegate as! AppDelegate)
var managedObjectContext: NSManagedObjectContext = appDel.managedObjectContext!
var coreDataName: NSManagedObject = (name as AnyObject?) as! NSManagedObject
var coreDataImage: NSManagedObject = (image as AnyObject?) as! NSManagedObject
var coreDataText: NSManagedObject = (text as AnyObject?) as! NSManagedObject
var coreDataData: NSManagedObject = (data as AnyObject?) as! NSManagedObject
var coreDataURL: NSManagedObject = (url as AnyObject?) as! NSManagedObject

managedObjectContext.deleteObject(coreDataName)
managedObjectContext.deleteObject(coreDataImage)
managedObjectContext.deleteObject(coreDataText)
managedObjectContext.deleteObject(coreDataData)
managedObjectContext.deleteObject(coreDataURL)
managedObjectContext.save(nil)

buttonDelete.enabled = false
buttonShare.enabled = false
}

}

我的核心数据文件

import Foundation
import CoreData

@objc(News)

class News: NSManagedObject {

@NSManaged var dateNewsCoreDataString: String
@NSManaged var imageNewsCoreData: NSData // NSData
@NSManaged var nameNewsCoreData: String
@NSManaged var textNewsCoreData: String
@NSManaged var urlNewsCoreData: String

}

最佳答案

我更改了代码,它对我有用。

 var detailObject: AnyObject? // It's data from FavoriteTableViewController

func deleteAll() {
var appDel: AppDelegate = (UIApplication.sharedApplication().delegate as! AppDelegate)
var managedObjectContext: NSManagedObjectContext = appDel.managedObjectContext!

var dataDelete = detailObject as! NSManagedObject

managedObjectContext.deleteObject(dataDelete)
managedObjectContext.save(nil)

managedObjectContext.save(nil)
buttonDelete.enabled = false
buttonShare.enabled = false
}

关于ios - 如何在 Swift 中从 Core Data 中删除多个不同的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31112751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com