在SwiftUI中使用ScrollView选择项目的方法如下:
以下是一个示例代码:
import SwiftUI
struct ContentView: View {
@State private var selectedItems: [String] = []
let items = ["Item 1", "Item 2", "Item 3", "Item 4", "Item 5"]
var body: some View {
ScrollView {
VStack(spacing: 10) {
ForEach(items, id: \.self) { item in
Button(action: {
self.toggleSelection(item)
}) {
HStack {
Text(item)
Spacer()
if self.selectedItems.contains(item) {
Image(systemName: "checkmark")
}
}
}
.padding()
.background(Color.gray.opacity(0.2))
.cornerRadius(10)
}
}
.padding()
}
}
func toggleSelection(_ item: String) {
if selectedItems.contains(item) {
selectedItems.removeAll { $0 == item }
} else {
selectedItems.append(item)
}
}
}
struct ContentView_Previews: PreviewProvider {
static var previews: some View {
ContentView()
}
}
这个示例代码创建了一个包含可选项目的数组items
,并使用ScrollView和ForEach循环遍历数组中的项目。每个项目都被包装在一个Button视图中,点击按钮会切换项目的选中状态。选中的项目会在按钮旁边显示一个勾选标志。
北极星训练营
高校公开课
腾讯云数据湖专题直播
腾讯云GAME-TECH沙龙
云+社区技术沙龙[第27期]
北极星训练营
腾讯云GAME-TECH游戏开发者技术沙龙
Techo Day
北极星训练营
领取专属 10元无门槛券
手把手带您无忧上云