相关疑难解决方法(0)

使用Swift将CoreData实现到现有项目中

我目前正在使用Xcode 6 beta 7,并决定在创建项目后我需要CoreData.我已经看过一些已经问过这个目标C的问题以及关于这个主题的观看视频,但我似乎得到了同样的错误.至于我对CoreData框架本身的使用,我很确定它是正确的,因为我创建了另一个空项目(检查了CoreData框)并遵循相同的实现,它就像一个魅力,但可能有些不对劲我是在那里做.以下是我在Swift项目中实现CoreData的步骤.

第1步:我通过"Build Phase"下的"Link Binary with Libraries"选项卡添加了CoreData框架

第2步:然后我去了我需要实现CoreData的任何.swift文件(appDelegate.swift和现在的另一个文件)并添加了以下行:

import CoreData
Run Code Online (Sandbox Code Playgroud)

到顶部.

第3步:我创建了一个名为"cData"的实体的数据列表,然后为它创建了一个名为"data.swift"的类.这是data.swift:

import UIKit
import CoreData

@objc( data )
class data: NSManagedObject {
    @NSManaged var something : String
}
Run Code Online (Sandbox Code Playgroud)

第4步:我编写代码实际将数据保存在另一个文件中:

@IBAction func useCoreData(sender: AnyObject)
    {
        let AD : AppDelegate = UIApplication.sharedApplication().delegate as AppDelegate
        let ct : NSManagedObjectContext = AD.managedObjectContext!
        let ent = NSEntityDescription.entityForName( "CData", inManagedObjectContext: ct )
        var dat = data( entity: ent!, insertIntoManagedObjectContext: ct )
        dat.something = someTextField.text
        ct.save( nil )

        println(dat)
    }
Run Code Online (Sandbox Code Playgroud)

第5步:我认为这是搞砸的地方,尽管我可能错了.我在一个单独的Mac上创建了一个新项目(所以我可以将它命名为同一个东西)并检查CoreData框.然后我将整个appDelegate.swift从这个项目复制到我当前的项目中.这是我的appDelegate.swift:

import UIKit
import …
Run Code Online (Sandbox Code Playgroud)

core-data ios swift xcode6

16
推荐指数
1
解决办法
1万
查看次数

标签 统计

core-data ×1

ios ×1

swift ×1

xcode6 ×1