gpt4 book ai didi

swift - 如何使用 UISearchBar 同时按 2 个参数进行搜索

转载 作者:行者123 更新时间:2023-11-28 13:37:54 26 4
gpt4 key购买 nike

我正在使用 UISearchBar 来搜索用户。用户有用户名和显示名。现在我使用这段代码通过参数“用户名”进行搜索,如何同时通过“显示名”进行搜索?搜索结果应包含这两个参数

var timer: Timer?
var filteredUsers = [User]()
var users = [User]()
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
timer?.invalidate()
timer = Timer.scheduledTimer(withTimeInterval: 1, repeats: false, block: { [weak self] (timer) in
if searchText.isEmpty {
self?.filteredUsers = (self?.users)!
} else {
self?.filteredUsers = (self?.users.filter { (user) -> Bool in
return user.username.lowercased().contains(searchText.lowercased())
})!
}
self?.tableView?.reloadData()
})
}

最佳答案

过滤您的用户时,您只需使用“或”逻辑运算符将这两个条件都包括在内以进行检查。让你的过滤结果看起来像这样:

self?.filteredUsers = (self?.users.filter { (user) -> Bool in
return (
user.username.lowercased().contains(searchText.lowercased()) ||
user.displayname.lowercased().contains(searchText.lowercased())
)
})!

关于swift - 如何使用 UISearchBar 同时按 2 个参数进行搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56389932/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com