簡體   English   中英

如何按順序將數組元素保存到Core Data中

[英]How to save elements of array into Core Data in order

我想將數組元素保存到Core Data中,我嘗試了許多不同的方法,但是沒有一個方法沒有保存所有元素,而是保存了數組中的最后一個元素。 我知道我要在Core Data中重寫元素,但是不添加新元素。 我在下面寫了一些我嘗試過的方法。 請以編程方式向我展示如何制作?

let superArray = ["Steve", "Marina", "Tom", "Scarlett", "Michael", "David"]
@IBAction func saveData(sender: UIBarButtonItem) {
    let personEntity = NSEntityDescription.insertNewObjectForEntityForName("Person", inManagedObjectContext: managedObjectContext) as! NSManagedObject
    var index = 0
    while index < superArray.count {
        personEntity.setValue(superArray[index], forKey: "namePerson")
        managedObjectContext.save(nil)
        index++
    }
}

第二種方法。

    let superArray = ["Steve", "John", "Tom", "Scarlett", "Michael", "David"]
    @IBAction func saveData(sender: UIBarButtonItem) {
        let personEntity = NSEntityDescription.insertNewObjectForEntityForName("Person", inManagedObjectContext: managedObjectContext) as! NSManagedObject

        var stringForSave: String!
        for item in superArray {
            stringForSave = item
//            personEntity.setValue(item, forKey: "namePerson")
//            managedObjectContext.save(nil)
        }
        personEntity.setValue(stringForSave, forKey: "namePerson")
        managedObjectContext.save(nil)
    }

第三種方法

var superArray = ["Steve", "John", "Tom", "Scarlett", "Michael", "David"]

@IBAction func saveData(sender: UIBarButtonItem) {
    let personEntity = NSEntityDescription.insertNewObjectForEntityForName("Person", inManagedObjectContext: managedObjectContext) as! NSManagedObject

    for var index = 0; index < superArray.count; index++ {
        var data = superArray[index]

        personEntity.setValue(data, forKey: "namePerson")
        managedObjectContext.save(nil)
    }
}
@IBAction func saveData(sender: UIBarButtonItem) {
    for item in superArray {
    let personEntity = NSEntityDescription.insertNewObjectForEntityForName("Person", inManagedObjectContext: managedObjectContext) as! Person
        personEntity.namePerson = item
        managedObjectContext.save(nil)

    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM