SwiftUI:属性包装器@GestureState的使用示例

@GestureState用于跟踪和管理与手势相关的状态信息。它用于创建自定义手势,并跟踪手势过程中的状态变化。

使用示例

在下面的示例中,我们使用 @GestureState 跟踪长按手势的状态,并根据手势的状态来改变视图的颜色。

struct ContentView: View {
    @GestureState private var isLongPressed = false
 
    var body: some View {
        Circle()
            .fill(isLongPressed ? Color.red : Color.blue)
            .frame(width: 100, height: 100)
            .gesture(
                LongPressGesture()
                    .updating($isLongPressed) { currentState, gestureState, _ in
                        gestureState = currentState
                    }
            )
    }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容