Menu
CoddyTech

Sheet và cảnh báo

Thuộc phần Giới thiệu về SwiftUI trong hành trình Swift của Coddy. Bài học 37 trên 50.

Một sheet trượt một khung nhìn lên trên màn hình hiện tại. Khung nhìn này hiển thị khi trạng thái Bool là true:

@State private var showHelp = false

Button("Help") { showHelp = true }
    .sheet(isPresented: $showHelp) {
        Text("Swipe down to close")
    }

Một cảnh báo đưa ra một câu hỏi ngắn. Cảnh báo hoạt động theo cách tương tự, với tiêu đề, các nút và một thông báo không bắt buộc:

Button("Delete") { askDelete = true }
    .alert("Delete photo?", isPresented: $askDelete) {
        Button("Delete", role: .destructive) { deletePhoto() }
        Button("Cancel", role: .cancel) { }
    } message: {
        Text("This cannot be undone.")
    }

Chạm vào bất kỳ nút nào trong cảnh báo sẽ chạy hành động tương ứng và đóng cảnh báo, đặt trạng thái trở lại false. Bên trong một trang tính, @Environment(\.dismiss) var dismiss cung cấp hành động dismiss() để đóng trang tính bằng code.

challenge icon

Thử thách

Trung bình

Khi người dùng nhấn Save, hãy hiển thị cảnh báo có tiêu đề Saved!, thông báo Your note is stored. và một nút OK. Sử dụng trạng thái showSaved.

Tự làm thử

import SwiftUI

@main
struct CoddyApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()
        }
    }
}
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Giới thiệu về SwiftUI

Tự luyện tập: Playground SwiftUI