我只想在水平框架内拖动圆形。我尝试下面的代码,您可以看到形状完美地水平工作并且左侧也可以,但是当将右侧形状拖动到设备框架之外时。我检查了很多答案,但没有任何工作。也尝试添加.onEnded
但不工作。请帮助我提前谢谢这是我尝试过的代码
struct ProgressIndicator: View {
@State private var position = CGSize.zero
var body: some View {
GeometryReader { geometry in
VStack(alignment: .leading) {
ZStack {
Circle()
.foregroundColor(Color.blue)
.opacity(0.3)
.frame(width: 40, height: 40, alignment: .leading)
.padding(.bottom, -12)
}
.gesture(
DragGesture()
.onChanged({ (value) in
self.position.width += value.location.x
})
)
.offset(x: self.position.width - 20, y: 0)
}
}
}
}