Rox*_*Rox 4 core-data nsfetchrequest ios swift3 ios10
我已经在swift 3中转换了我的代码.我在我的应用程序中使用核心数据.如您所知,NSFetchRequest已更改.在swift 2中它是:
let request = NSFetchRequest(entityName: "UnsyncedTask")
Run Code Online (Sandbox Code Playgroud)
在快速3:
let request:NSFetchRequest<NSFetchRequestResult> = UnsyncedTask.fetchRequest()
Run Code Online (Sandbox Code Playgroud)
我的问题是,它只支持ios 10.如何才能使ios兼容?我想要支持ios 9的NSFetchRequest,带有swift 3的ios 10.
Mar*_*n R 13
NSFetchRequest(entityName:)
仍可在Swift 3中使用.您可以if #available
在iOS 10/macOS 10.12或更高版本上使用较新的API,在较旧的OS版本上使用较旧的API:
let request: NSFetchRequest<UnsyncedTask>
if #available(iOS 10.0, OSX 10.12, *) {
request = UnsyncedTask.fetchRequest()
} else {
request = NSFetchRequest(entityName: "UnsyncedTask")
}
do {
let results = try context.fetch(request)
for task in results {
// ...
}
} catch let error {
print(error.localizedDescription)
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8687 次 |
最近记录: |