多选功能跟单选功能只有selection参数不同,单选设置一个字符串或者对象 多选换成集合即可
struct ListMultiple: View {
//多选
@State private var selectModels = Set<StudentModel>()
//单选
//@State private var selectModel:StudentModel?;
@State private var dataItems = dataSource;
var body: some View {
List(dataItems,id:\.self, selection:$selectModels) { item in
HStack(spacing:15, content: {
Image(item.avatar).resizable().frame(width:50,height:50)
VStack(alignment: .leading, spacing: 10, content: {
let name = "姓名:" + item.name
Text(name)
let age = "年龄:" + item.age
Text(age).foregroundColor(.gray).font(.system(size:16))
}).frame(height:50)
})
}.navigationTitle("人员管理").toolbar { EditButton() }
}
}
效果如下