SwiftUI Action Sheet

  • 이번에는 SwiftUI에서 Action Sheet를 사용하는 방법에 대해 알아보겠다.
  • Swift 기본 문법을 숙지하고 있다는 가정 하에 작성되었다.

Action Sheet 형태

  • Action Sheet는 다음과 같은 형태를 갖고 있다.
  • title은 Action Sheet의 큰 글씨 부분을,
  • message는 Action Sheet의 작은 글씨 부분을,
  • buttons에는 Action Sheet의 옵션 버튼들을 입력한다.
ActionSheet(title: Text, message: Text?, buttons: [ActionSheet.Button])
  • Action Sheet를 사용하기 위해서는 @State 변수가 필요하다.
  • @State 변수에 false 값을 할당한다.
@State var showingSheet = false

Action Sheet 사용법

  • 생성한 @State 변수와 Action Sheet를 사용해 다음과 같이 버튼을 구현할 수 있다.
  • 변수의 값을 true로 변경해주는 Button과 그 버튼에 action sheet 속성을 부여해준다.
  • Action sheet 속성에 ActionSheet(...) View를 생성해준다.
@State var showingSheet = false

var body: some View {
    Button(action: {
        self.showingSheet = true
    }) {
        Text("Show Action Sheet")
    }
    .actionSheet(isPresented: $showingSheet) {
        ActionSheet(title: Text("Title"), message: Text("message"), buttons: [.default(Text("Dismiss")), .cancel(Text("Cancel"))])
    }
}	
  • 그리고 이렇게 버튼을 누르면, Action Sheet가 활성화되고,
  • 옵션 버튼들이 Sheet에 나타나게 된다.

swiftui-tutorial-action-sheet

관련 글