gpt4 book ai didi

button - SwiftUI:如何处理点击和长按按钮?

转载 作者:行者123 更新时间:2023-12-02 06:17:49 25 4
gpt4 key购买 nike

我在 SwiftUI 中有一个按钮,我希望能够对“点击按钮”(正常点击/点击)和“长按”执行不同的操作。

这在 SwiftUI 中可能吗?

这是我现在拥有的按钮的简单代码(仅处理“正常”点击/触摸情况)。

Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
} .disabled(self.BLEinfo.isScanning)

我已经尝试添加“长按手势”,但它仍然只“执行”“正常/短”点击。这是我尝试过的代码:

Button(action: {self.BLEinfo.startScan() }) {
Text("Scan")
.fontWeight(.regular)
.font(.body)
.gesture(
LongPressGesture(minimumDuration: 2)
.onEnded { _ in
print("Pressed!")
}
)
}

谢谢!

杰拉德

最佳答案

我尝试了很多事情,但最后我做了这样的事情:

    Button(action: {
}) {
VStack {
Image(self.imageName)
.resizable()
.onTapGesture {
self.action(false)
}
.onLongPressGesture(minimumDuration: 0.1) {
self.action(true)
}
}
}

仍然是一个有效果的按钮,只是短按和长按不同。

关于button - SwiftUI:如何处理点击和长按按钮?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58284994/

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