[swift] 팝업창에서 사용자의 선택에 따라 다른 기능을 제공하는 방법 - Swift PopupDialog

팝업창은 사용자와 상호작용할 때 유용한 도구입니다. 사용자가 팝업창에서 선택한 옵션에 따라 다른 기능을 제공하고 싶다면, Swift의 PopupDialog 라이브러리를 사용할 수 있습니다. PopupDialog는 간단하면서도 강력한 팝업창 라이브러리로, 사용하기 쉽고 다양한 커스터마이징 옵션을 제공합니다.

1. 스위프트 팝업창 라이브러리 설치

먼저, PopupDialog 라이브러리를 설치해야 합니다. CocoaPods를 사용하여 설치하는 방법은 다음과 같습니다:

pod 'PopupDialog'

터미널에서 프로젝트 디렉토리로 이동한 후, pod install 명령어를 실행하여 라이브러리를 설치합니다.

2. 팝업창 생성하기

다음으로, 팝업창을 생성하는 방법을 살펴보겠습니다. 팝업창에는 제목, 메시지 및 선택 옵션들이 들어갈 수 있습니다.

import PopupDialog

// 팝업창 생성
let popup = PopupDialog(title: "선택하세요", message: "어떤 기능을 사용하시겠습니까?")

// 선택 옵션 생성
let option1 = DefaultButton(title: "기능 1") {
    // 기능 1 실행
    // ...
}

let option2 = DefaultButton(title: "기능 2") {
    // 기능 2 실행
    // ...
}

// 팝업창에 선택 옵션 추가
popup.addButtons([option1, option2])

// 팝업창 표시
self.present(popup, animated: true, completion: nil)

위의 코드를 실행하면 팝업창이 뜨고, 사용자가 “기능 1” 또는 “기능 2”를 선택할 수 있게 됩니다.

3. 선택 옵션 처리하기

사용자가 선택한 옵션에 따라 다른 기능을 실행하려면, 해당 옵션의 클로저 블록에서 기능을 구현하면 됩니다. 예를 들어, “기능 1”을 선택했을 때 실행되는 코드는 다음과 같을 수 있습니다.

let option1 = DefaultButton(title: "기능 1") {
    // 기능 1 실행
    self.performFunction1()
}

func performFunction1() {
    // 기능 1 구현
    // ...
}

위의 코드에서 performFunction1() 메서드 안에 “기능 1”을 수행하는 로직을 추가하면 됩니다. 마찬가지로, “기능 2”를 선택했을 때 실행되는 코드를 작성할 수도 있습니다.

4. 추가 커스터마이징 옵션

PopupDialog는 팝업창의 모양과 동작을 커스터마이징할 수 있는 다양한 옵션들을 제공합니다. 예를 들어, 팝업창의 배경색을 변경하려면 다음과 같이 코드를 추가할 수 있습니다.

let popup = PopupDialog(title: "선택하세요", message: "어떤 기능을 사용하시겠습니까?",
                        buttonAlignment: .horizontal, // 선택 옵션 가로 정렬
                        transitionStyle: .zoomIn, // 팝업창 표시 애니메이션
                        gestureDismissal: true) // 화면 밖 터치로 팝업창 제거

// 팝업창의 배경색 설정
popup.view.backgroundColor = UIColor(red: 0.9, green: 0.9, blue: 0.9, alpha: 1.0)

위의 코드에서 buttonAlignment은 선택 옵션 버튼의 가로 정렬을 설정하고, transitionStyle은 팝업창 표시 애니메이션 스타일을 설정합니다. gestureDismissal은 사용자가 팝업창 외부를 터치하여 팝업창을 닫을 수 있는지 여부를 설정합니다. 그리고 popup.view.backgroundColor은 팝업창의 배경색을 설정하는 부분입니다.

출처