SwiftUI会根据成员属性状态自动更新界面的显示。
struct View成员属性分为三种:变量、常量、绑定
1、变量
使用修饰符 @State
不能单独使用var,单用var不能修改
单独用var修改会报错:Cannot assign to property: 'self' is immutable
只监控在自有body中的修改,在其他位置修改不会更新视图
struct PlayerView: View {
@State private var isPlaying: Bool = false
var body: some View {
Button(action: {
self.isPlaying.toggle()
}) {
Image(systemName: isPlaying ? "pause.circle" : "play.circle")
}
}
}
2、常量
使用修饰符 let 或var
单用var 为常量
struct PlayerView: View {
let episode: Episode // The queued episode.
@State private var isPlaying: Bool = false
var body: some View {
VStack {
// Display information ab