【发布时间】:2021-03-30 19:51:51
【问题描述】:
我有一个数组定义为:
var MyArrayOfPaintings = [Painting]()
其中绘画被定义为:
struct Painting{
let Artist: String
let Name: String
let ThumbNailURL: String
var PaintsUsed: [Paint]
}
而画图定义为:
struct Paint{
var PaintType: String
var PaintColorName: String
}
通常,如果我想根据搜索栏中的 Name 属性过滤此数组,我只需添加一行:
FilteredArray = MyArrayOfPaintings.filter({$0.Name.lowercased().contains(searchText.lowercased())})
这很好用,但现在在我的搜索栏中,我还希望能够搜索然后过滤 MyArray,其中 PaintColorName 是搜索的值。
如何根据提供的 PaintColourName 过滤 MyArrayOfPaintings 您如何从本质上根据其中的结构数组过滤数组?
【问题讨论】:
-
同理。您只需要询问每幅画中所使用的颜料是否有此颜色。
-
另外,请以小写开头的属性名称和变量名称。大写字母用于类型。
标签: arrays swift struct filter searchbar