[swift] 팝업창에서 사용자의 의견을 수집하는 방법 - Swift PopupDialog 사용하기

팝업창은 앱에서 사용자와 소통하는 데 유용한 기능입니다. 사용자의 의견이나 피드백을 수집하기 위해서는 팝업창에서 텍스트 입력을 받을 수 있는 기능이 필요합니다. Swift에서는 PopupDialog라는 라이브러리를 사용하여 간편하게 팝업창을 생성하고, 사용자의 의견을 수집할 수 있습니다.

1. PopupDialog 라이브러리 설치하기

Swift 프로젝트에 PopupDialog 라이브러리를 설치해야 합니다. 먼저, CocoaPods를 사용한다면 Podfile 파일에 다음과 같은 라인을 추가합니다:

pod 'PopupDialog'

그리고 터미널에서 다음 명령어를 실행하여 라이브러리를 설치합니다:

pod install

CocoaPods를 사용하지 않는다면, 직접 다운로드해서 프로젝트에 추가할 수도 있습니다. PopupDialog 라이브러리를 제공하는 GitHub 저장소에서 소스 코드를 다운로드하여 프로젝트에 추가합니다.

2. 팝업창 생성하기

팝업창을 생성하기 위해서는 PopupDialog 객체를 생성해야 합니다. 다음은 기본적인 사용자 입력을 받을 수 있는 팝업창을 생성하는 예제 코드입니다.

import PopupDialog

func showFeedbackPopup() {
    // 텍스트 필드 생성
    let textField = UITextField(frame: CGRect(x: 10, y: 10, width: 250, height: 30))
    textField.placeholder = "의견을 입력하세요"
    
    // 팝업창 생성
    let popup = PopupDialog(title: "사용자 의견", message: nil)
    popup.addTextField(textField)
    
    // 버튼 추가
    let cancelButton = CancelButton(title: "취소") {}
    let submitButton = DefaultButton(title: "제출") {
        if let text = textField.text {
            print("사용자 의견: \(text)")
            // 의견 수집 완료 후 처리 로직 추가
        }
    }
    popup.addButton(cancelButton)
    popup.addButton(submitButton)
    
    // 팝업창 표시
    present(popup, animated: true, completion: nil)
}

3. 팝업창 호출하기

팝업창을 호출하기 위해서는 해당 뷰 컨트롤러에서 present(_:animated:completion:) 메서드를 사용해야 합니다. 예를 들어, 버튼을 누르면 팝업창이 나타나도록 다음과 같이 호출할 수 있습니다.

@IBAction func showPopupButtonTapped(_ sender: UIButton) {
    showFeedbackPopup()
}

이제 사용자가 입력한 의견을 팝업창에서 확인하고, 필요한 처리를 할 수 있습니다. 위의 예제에서는 의견을 콘솔에 출력하는 로직을 추가해두었습니다.

결론

Swift에서 팝업창을 사용하여 사용자의 의견을 수집하는 것은 매우 간단합니다. PopupDialog 라이브러리를 사용하면 인터랙티브한 팝업창을 손쉽게 만들 수 있습니다. 이를 활용하여 더 나은 사용자 경험을 제공해보세요.

참고 자료