SwiftUI 对 ViewState 的表达语法

   2025-02-21 7200
核心提示:SwiftUI 中的 ViewState 可以通过 @State 关键字来表示。单个状态属性的定义和初始化:@State private var isShowingSheet = fal

SwiftUI 中的 ViewState 可以通过 @State 关键字来表示。

单个状态属性的定义和初始化:
@State private var isShowingSheet = false
在 View 中使用状态属性:
struct ContentView: View {@State private var isShowingSheet = falsevar body: some View {VStack {Button("Show Sheet") {self.isShowingSheet = true}.sheet(isPresented: $isShowingSheet) {SheetView()}}}}
在 View 中使用状态属性的值:
struct SheetView: View {@Environment(\.presentationMode) var presentationModevar body: some View {VStack {Text("Sheet View")Button("Dismiss") {self.presentationMode.wrappedValue.dismiss()}}}}

在上述示例中,isShowingSheet 是一个用于控制是否显示 sheet 的状态属性。当点击按钮时,它的值被设置为 true,从而显示 sheet。sheet 的显示状态由 isPresented 参数控制,它接受一个绑定的状态属性作为值。

在 SheetView 中,presentationMode 是一个用于控制 sheet 是否被隐藏的环境值。当点击按钮时,调用 self.presentationMode.wrappedValue.dismiss() 可以将 sheet 隐藏。

通过 @State$ 符号,SwiftUI 实现了一种简洁而直观的方式来处理和更新视图的状态。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言