gpt4 book ai didi

Swift UISearchbar 如何搜索类的属性

转载 作者:行者123 更新时间:2023-11-28 07:19:22 25 4
gpt4 key购买 nike

我正在尝试使用 swift 实现 UISearchBar,我能找到的所有示例都与搜索字符串数组有关。

使用一个随机示例,假设我有一个名为“Car”的类,其属性为“manufacturer”和“model”

我有一系列名为“Cars”的汽车

我想实现一个搜索栏,通过将字符串与 Cars 数组中的“制造商”属性进行比较来过滤结果。

到目前为止,我可以连接有关过滤结果数组、 TableView 结果等的所有其他内容。我无法解决的问题是:

  filteredManufacturers = Cars.filter({ (text) -> Bool in
let tmp: NSString = text as NSString
let range = tmp.range(of: searchText, options: NSString.CompareOptions.caseInsensitive)

返回 range.location != NSNotFound })

我遇到的问题是我不知道如何只引用一个类的属性。如果我输入:

filteredManufacturers = Cars.manufacturers.filter....

问题是“汽车”没有名为“制造商”的属性,如果。我改变它。并尝试引用。类属性 'Car.manufacturers' 那么显然它没有全部。在那里过滤实际的汽车数据。有没有人有什么建议。

我想一种方法是将所有制造商数据复制到一个数组中,我可以搜索这个,但我必须引用。引用它们的类的初始索引,和。看来久违了。

最佳答案

首先,您可以在不使用 Objective-C NSString 的情况下重写您原来的方法:

filteredManufacturers = Cars.filter {
$0.lowercased().contains(searchText.lowercased())
}

制造商搜索是一种非常相似的方式:

filteredManufacturers = Cars.filter {
$0.manufacturer.lowercased().contains(searchText.lowercased())
}

(假设Car中有一个名为manufacturer的实例属性,类型为String)

关于Swift UISearchbar 如何搜索类的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58572260/

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