시트와 알림
Coddy Swift 여정의 SwiftUI 입문 섹션에 포함된 레슨. 50개 중 37번째.
시트는 현재 화면 위로 뷰를 밀어 올려 표시합니다. Bool 상태가 true일 때 표시됩니다:
@State private var showHelp = false
Button("Help") { showHelp = true }
.sheet(isPresented: $showHelp) {
Text("Swipe down to close")
}알림은 짧은 질문을 표시합니다. 제목, 버튼 및 선택적 메시지를 사용하며 동일한 방식으로 작동합니다:
Button("Delete") { askDelete = true }
.alert("Delete photo?", isPresented: $askDelete) {
Button("Delete", role: .destructive) { deletePhoto() }
Button("Cancel", role: .cancel) { }
} message: {
Text("This cannot be undone.")
}알림의 버튼을 탭하면 해당 동작이 실행되고 알림이 닫히며, 상태가 다시 false로 설정됩니다. 시트 내부에서는 @Environment(\.dismiss) var dismiss를 통해 코드에서 시트를 닫는 dismiss() 동작을 사용할 수 있습니다.
챌린지
중급사용자가 Save를 탭하면, 제목이 Saved!이고 메시지가 Your note is stored.인 알림과 OK 버튼 하나를 표시하세요. showSaved 상태를 사용하세요.
직접 해보기
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
SwiftUI 입문의 모든 레슨
직접 연습해 보세요: Swift 플레이그라운드