Tag: 核心数据

带有由string的第一个字母创build的部分的NSFetchedResultsController

在iPhone上学习核心数据。 在核心数据填充表格视图的部分似乎有几个例子。 CoreDataBooks示例使用段,但是它们是从模型中的完整string生成的。 我想通过姓氏的第一个字母,地址簿,将核心数据表组织成部分。 我可以为每个人创造另一个属性,即一个单一的字母,以便作为部门分工,但这看起来很可笑。 这是我开始…伎俩似乎是愚弄sectionNameKeyPath : – (NSFetchedResultsController *)fetchedResultsController { //………SOME STUFF DELETED // Edit the sort key as appropriate. NSSortDescriptor *orderDescriptor = [[NSSortDescriptor alloc] initWithKey:@"personName" ascending:YES]; NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:orderDescriptor, nil]; [fetchRequest setSortDescriptors:sortDescriptors]; // Edit the section name key path and cache name if appropriate. // nil for section name key […]

Xcode正在寻找带有点的核心数据实体名称; 不编译

我一直在做一个项目,最近升级到了Xcode 8和Swift 3.0以及iOS 10.但是因为我这样做了,所以我一直无法编译。 我得到了我的每个实体的错误::0:错误:没有这样的文件或目录:''/Users/mark/Library/Developer/Xcode/DerivedData/…/.Account+CoreDataProperties.swift'每个案例有一个 。 (点)前的实体名称:.Account + CoreDataProperties.swift。 我将Code Gen从“Category / Extension”更改为Manual / None,我做了一个干净而干净的目录,删除了DerivedData目录。 有趣的是,当我查看相应的目录时,那里有一个实际的文件,没有点前缀。 这很混乱。 任何人都可以解释吗? 我需要解决这个问题才能继续核心数据。 TIA Mark

检查是否在Core Data中设置了属性?

我如何检查一个属性是否在核心数据对象中设置? 我将所有的核心数据对象加载到一个目录中: var formQuestions = [Questions]() 而我的核心数据NSManagementObject是: @NSManaged var noticeText: String formQuestions [indexPath.row] .noticeText //加载: var fetchRequest = NSFetchRequest(entityName: "Questions") fetchRequest.predicate = NSPredicate(format: "forms = %@", currentForm!) formQuestions = context.executeFetchRequest(fetchRequest, error: nil) as [Questions] 我的属性“noticeText”可能是空的或不是,所以当我创build我的核心数据对象时,可能没有设置一些值。 (该属性在核心数据中设置为可选) 当我现在尝试certificate如果有价值,它总是给我一个“EXC_BAD_ACCESS ….” if(formQuestions[indexPath.row].noticeText.isEmpty == false) 我可以设置一个空string,当我创build我的核心数据对象,但这应该不是一个好的解决scheme。 那么如何检查(optinal)而不是设定值? 提前致谢。

核心数据和iOS 7:持久存储的不同行为

我正在准备iOS 7的基于核心数据的应用程序的更新修复。我使用Xcode 5和iOS 7 SDK GM。 然而,我意识到持久性存储(这是一个UIManagedDocument )的不同行为:在iOS 7构build之前,文档文件夹中只有一个文件persistentStore (有时还有第二个persistentStore-journal )。 在iOS 7构build(干净安装)中,现在有三个文件用于持久性存储: persistentStore persistentStore-wal和 persistentStore-shm 苹果是否现在默认更改日记模式为WAL? 我想知道是否对我的应用程序有影响(想想用户如何从最新版本更新)? 最好是禁用WAL – 如果是的话,我怎样才能做到这一点与iOS 7 / UIManagedDocument ?

Sqlite文件位置核心数据

通常,核心数据应用程序的sqlite存储文件位于 库>应用程序支持> iPhone模拟器> 7.1(或您正在使用的版本)>应用程序>(无论哪个文件夹包含您的应用程序)>文档 文件夹,但我不能在IOS 8中find它。我假设他们只会在iPhone模拟器文件夹中添加一个8.0文件夹,但它不在那里。 有人能find它吗?