作者:mobiledu2502897207 | 来源:互联网 | 2023-01-23 17:03
如WWDC所述,iOS 11应该支持索引核心数据,以便可以通过Spotlight对其进行搜索。这是WWDC的演示文稿:
https://developer.apple.com/videos/play/wwdc2017/210/
但是,在观看视频并查看文档之后,我仍然不知道如何设置我的核心数据对象,以便可以从手机的聚光灯搜索中搜索它们。
我猜主要问题是:
1.)您实际上如何设置可以搜索特定对象类型的哪些属性。
2.)如何设置NSCoreDataCoreSpotlightDelegate并获取它来处理数据?看起来NSPersistentStore有一个属性
var coreSpotlightExporter:NSCoreDataCoreSpotlightDelegate
但这只准备好了:(
我找不到任何可以清楚地解释这些内容的内容。谢谢!
1> Leo Natan--r..:
您不coreSpotlightExporter
直接设置。而是NSCoreDataCoreSpotlightExporter
使用您的导出代理设置选项:
container.persistentStoreDescriptions.forEach {
$0.setOption(MyCoreDataCoreSpotlightDelegate(forStoreWith:$0, model: container.managedObjectModel), forKey:NSCoreDataCoreSpotlightExporter)
}
我在致电之前添加了此代码loadPersistentStores(completionHandler:)
。
要设置属性和实体,请在UI中为NSAttributeDescription
和NSEntityDescription
或在其中更新适当的属性.xcdatamodeld
。