我刚刚开始使用 SwiftUI,我希望找到最好的方法来解决在拖动手势期间将此矩形保持在屏幕边界内的问题。现在它离开边缘直到它到达正方形的中间(我想是因为我正在使用 CGPoint)。
我试着做一些数学来限制矩形,它只在左侧成功,但这似乎是一种糟糕的方法,并且不考虑不同的屏幕尺寸。任何人都可以帮忙吗?
struct ContentView: View {
@State private var pogPosition = CGPoint()
var body: some View {
PogSound()
.position(pogPosition)
.gesture(
DragGesture()
.onChanged { value in
self.pogPosition = value.location
// Poor solve
if(self.pogPosition.x < 36) {
self.pogPosition.x = 36
}
}
.onEnded { value in
print(value.location)
}
)
}
}