本节课演示长按手势的使用,长按手势常用于显示快捷菜单。
示例代码:
struct ContentView : View { @GestureState var isLongPressed = false //用于刷新长按手势的状态 var body: some View { let longPressGesture = LongPressGesture() //初始化一个长按手势,该手势一旦识别到长按的触摸状态,就会调用手势的结束事件。您甚至可以限制长按手势的时间长度 .updating($isLongPressed) { value, state, transcation in //通过调用updating方法,监听手势状态的变化 print(value, state, transcation) state = value } .onEnded { (value) in print(value) } return Circle() .fill(Color.orange) .frame(width: 240, height: 240) .gesture(longPressGesture) .scaleEffect(isLongPressed ? 1.4 : 1) .animation(.default) } }