gpt4 book ai didi

slider - 通过点击它来设置 SwiftUI slider 的值

转载 作者:行者123 更新时间:2023-12-02 19:48:57 27 4
gpt4 key购买 nike

如何通过点击 SwiftUI Slider 来更改它的值?

最佳答案

这是我使用 GeometryReader 创建的最小实现舍入到最接近的值:

struct TappableSlider: View {
var value: Binding<Float>
var range: ClosedRange<Float>
var step: Float

var body: some View {
GeometryReader { geometry in
Slider(value: self.value, in: self.range, step: self.step)
.gesture(DragGesture(minimumDistance: 0).onEnded { value in
let percent = min(max(0, Float(value.location.x / geometry.size.width * 1)), 1)
let newValue = self.range.lowerBound + round(percent * (self.range.upperBound - self.range.lowerBound))
self.value.wrappedValue = newValue
})
}
}
}

可以像普通 slider 一样使用,例如

TappableSlider(value: $sliderValue, in: 1...7, step: 1.0)

关于slider - 通过点击它来设置 SwiftUI slider 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58687298/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com