【发布时间】:2020-11-15 16:08:00
【问题描述】:
我在一个数据结构中有一堆或多个数组,我将它们组合成一个数组并删除任何重复项。是否可以将一个项目移动到数组的顶部,使其在列表中排在第一位?我希望All 出现在列表顶部,但由于Agriculture,它目前处于第二位。
以下是数据结构中的一些数组:
let productData: [ProductModel] = [
ProductModel(application: ["All", "Clean Chemistry", "Food", "Agriculture", "Polymers"]),
ProductModel(application: ["All", "Food", "Agriculture", "Gin", "Polymers"]),
ProductModel(application: ["All", "Metals", "Polymers"]),
]
这里是我组织数组并将其呈现在 HStack 中的地方:
struct ProductList: View {
var applicationsArray = Array(Set(productData.flatMap(\.application))).sorted()
var body: some View {
ScrollView(.horizontal){
HStack{
ForEach(applicationsArray, id: \.self) { item in
Button(action: {
// SELECT ITEM
}) {
VStack(alignment: .center){
Image(item)
Text(item)
}
}
}
}
}
}
}
【问题讨论】: