gpt4 book ai didi

ios - Swift:如何对数组中结构的子值使用 UISearchResultsUpdating?

转载 作者:行者123 更新时间:2023-11-28 06:46:09 24 4
gpt4 key购买 nike

在这个 UITableViewController 中,我有一个这样的结构数组:

struct UserItem {

let key: String!
let displayName: String!
let profilePictureUrl: String!
let ref: Firebase!

init(snapshot: FDataSnapshot) {
key = snapshot.key
displayName = snapshot.value["displayName"] as! String
profilePictureUrl = snapshot.value["profileImage"] as! String
ref = snapshot.ref
}
}

我有一个搜索栏,它使用具有以下功能的 UISearchResultsUpdating 类:

func updateSearchResultsForSearchController(searchController: UISearchController)

我想做的是在 UserItem.displayName 属性的搜索栏中使用 NSPredicate 过滤掉 UserItem 对象的数组。

我最近的尝试是将所有 .displayName 值放在一个 [String] 数组中,然后将其过滤到一个新的 [String] 数组中,但这对我来说似乎有点困惑。我只想过滤 [UserItem] 数组。

我需要 UserItem 数组,以便我可以将我的 segue 中的唯一用户 ID 与用户配置文件进行比较。

有办法吗?

最佳答案

你必须使用谓词吗?如果没有,您可以使用闭包轻松过滤结构数组,如下所示:

let filteredUserItems = userItems.filter { return $0.displayName.lowercaseString.containsString(searchValue.lowercaseString) }

关于ios - Swift:如何对数组中结构的子值使用 UISearchResultsUpdating?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36292284/

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