swift - 如何使用 swiftui 中的搜索栏过滤列表
问题描述
如何使用 SwiftUI 中的搜索栏过滤列表。
这是我到目前为止所做的,它显示了列表中的所有信息,但列表没有过滤信息。
ForEach(
(0..<self.appData.myJobs.count).filter(
{ "\($0)".contains(searchBar.text) || searchBar.text.isEmpty }),
id: \.self) { index in
谢谢。
解决方案
现在您尝试过滤索引(例如 1、2、3...),但我假设您尝试通过一些文本进行过滤,所以它应该类似于(我现在没有您的 Job 属性,所以这只是假设,但想法应该很清楚)
ForEach(
(0..<self.appData.myJobs.count).filter({ i in // << here you get index
// assuming you have .jobTitle property in Job and want to filter by it
// so just substitute your property
self.appData.myJobs[i].jobTitle.contains(searchBar.text) ||
searchBar.text.isEmpty }),
id: \.self) { index in
推荐阅读
- scheduler - 在 dhtmlx 调度程序 onbeforeviewchange 中显示确认框
- swift - 将文档附加到 PDFView 时 SIGABRT 崩溃
- python-3.x - 让我的 EC2 实例利用更多 CPU 能力
- asp.net-mvc - “服务器错误'/'应用程序”和“服务器错误”之间的区别
- java - ./gradlew desktop:run 不起作用,但设置配置可以:libgdx
- php - WooCommerce:检索产品子类别的名称
- c# - mvc 模板中定义的导航栏在哪里?
- regex - 如何在 R 中使用 unnest_tokens 对连字符进行标记
- javascript - ipcRenderer.send() 函数在 setInterval 内不起作用
- wordpress - 仅禁用 wordpress 中的结帐选项