zer*_*ero 54 console xcode core-data xcode7 swift2
我已经找到了一些关于这个问题的问题,但是他们都没有帮我解决问题.我正在尝试使用此代码将对象保存到核心数据(在Xcode 6和Simulator中工作得很好......):
let fetchRequest = NSFetchRequest(entityName: "Patient")
let fetchedResults : [NSManagedObject]!
do {
fetchedResults = try managedContext.executeFetchRequest(fetchRequest) as! [NSManagedObject]
patienten = fetchedResults
} catch {
print("error")
}
Run Code Online (Sandbox Code Playgroud)
一旦我开始在Xcode 7 beta和物理设备上开始这个项目,我就添加了do-try-catch.现在,当我点击Save按钮时,这段代码被调用,应用程序冻结,我得到以下内容:
警告:无法从dyld共享缓存加载任何Objective-C类信息.这将显着降低可用类型信息的质量.
有谁知道我哪里出错了?
thi*_*fun 23
对于将来遇到这个问题的人,我自己也遇到了这个问题,事实证明我实际上是从递归函数中获得了堆栈溢出.
显然,调用setValue:forKey:NSObject会调用相应的set[Key]函数,其中[Key]是您给该forKey部分的(大写)名称.
所以,如果像我一样,你的代码如下所示,它将导致无限循环和崩溃.
func setName(name: String) {
self.setValue(name, forKey: "name")
}
Run Code Online (Sandbox Code Playgroud)
Rob*_*ida -1
let fetchRequest = NSFetchRequest(entityName: "Patient")
do {
let fetchedResults = try managedObjectContext!.executeFetchRequest(fetchRequest)
print("\(fetchedResults)")
} catch {
print("error")
}
Run Code Online (Sandbox Code Playgroud)
上面的代码对我有用。也许问题在于你的核心数据是如何管理的。
managedObjectContext真的被创建了。| 归档时间: |
|
| 查看次数: |
37861 次 |
| 最近记录: |