swift - 为什么这个过滤程序这么慢?
问题描述
我第一次在我的应用程序中使用 CoreData,当我过滤我的数据时,它需要 20-30 秒才能过滤。列表视图有一个浮动按钮,当点击该按钮时,用户可以选择他们想要过滤的状态。点击此按钮将返回列表视图,并在处理时显示为冻结状态。它返回的数据是准确的,只是似乎花费的时间比应有的要长得多。最多有 3600 个条目,所以这应该是即时的。
这是填充我的过滤列表视图的代码。
init(categoryFilter: String, stateFilter: String) {
if (categoryFilter.count > 0 && stateFilter.count > 0){
let predicate = NSPredicate(format: "category BEGINSWITH %@ AND state BEGINSWITH %@", categoryFilter, stateFilter)
fetchRequest = FetchRequest<Bonus>(entity: Bonus.entity(), sortDescriptors: [], predicate: predicate)
} else if (categoryFilter.count > 0 && stateFilter.count <= 0){
let predicate = NSPredicate(format: "category BEGINSWITH %@", categoryFilter)
fetchRequest = FetchRequest<Bonus>(entity: Bonus.entity(), sortDescriptors: [], predicate: predicate)
} else if (categoryFilter.count <= 0 && stateFilter.count > 0){
let predicate = NSPredicate(format: "state BEGINSWITH %@", stateFilter)
fetchRequest = FetchRequest<Bonus>(entity: Bonus.entity(), sortDescriptors: [], predicate: predicate)
} else {
fetchRequest = FetchRequest<Bonus>(entity: Bonus.entity(), sortDescriptors: [])
}
我不确定还有哪些其他代码对您有用,但请让我知道我还应该发布什么。
任何想法我做错了什么?
解决方案
推荐阅读
- r - 如何在 x 设置为 -10 到 10 的情况下在 R 中绘制逻辑函数?
- javascript - 如何使用 AJAX 将 HTML 表单中的数据提交到 Google 表格?
- css - 在 React 中将 ClassName 链接到文件
- certificate - TXT 记录的条目在哪里?
- react-native - 如何解决 React Native 中“App.js”中的“无法解析”@react-navigation/stack”?
- c# - Azure Web Service .NET 应用程序:不提供此类页面
- mysql - 查询中的索引匹配
- android - 我正在尝试连接到 Firebase,并且我已按照收到这些错误的所有步骤进行操作。我在这里搜索了很多,一无所获
- python - 在 Pandas 中合并两个数据框时出现值错误
- python - Python Antlr 为什么我的代码没有得到预期的结果?