Menu
CoddyTech

条件视图

本课属于 Coddy Swift 学习旅程的“SwiftUI 入门”单元。第 22 课,共 50 课。

body 中的 if 会决定视图是否存在:

@State private var showDetails = false

var body: some View {
    VStack {
        Button("Show details") {
            showDetails.toggle()
        }
        if showDetails {
            Text("Made with SwiftUI")
        }
    }
}

当 showDetails 为 false 时,这段文本不会显示在屏幕上。轻点后,它就会显示出来。else 分支则会显示另一个视图:

if isLoggedIn {
    Text("Welcome back")
} else {
    Button("Log in") { isLoggedIn = true }
}
challenge icon

挑战

简单

只有在用户点击 Show details 后,文本 Made with SwiftUI 才应显示。让按钮将 showDetails 设为 true,并且仅在 showDetails 为 true 时显示文本(及其标识符)。

亲手试试

import SwiftUI

@main
struct CoddyApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

SwiftUI 入门中的所有课

自己练习: SwiftUI 在线编辑器