【发布时间】:2021-02-15 22:03:23
【问题描述】:
我尝试更新 ForEach 的一项的位置。我只想从 ForEach 的数组中拖出一个项目。其余的应该保持不变。我尝试了几种不同的方法,结果总是所有项目都被拖动或根本没有项目。
在这个阶段我真的很沮丧,所以如果你能帮助我,我会非常高兴!如果您需要更多信息,请随时询问,我是 stackOverflow 的新手。
struct ContentView: View {
var texts: [String] = ["Test1", "Test2"]
@State var positon: CGSize = .zero
var body: some View {
HStack {
ForEach(texts, id: \.self) { text in
Text(text)
.offset(y: positon.height)
.gesture(
DragGesture()
.onChanged { value in
positon = value.translation
}
.onEnded { value in
positon = .zero
}
)
}
}
}
}
【问题讨论】:
-
这是否回答了您的问题stackoverflow.com/a/61301670/12299030?
标签: arrays swift swiftui swiftui-foreach draggesture