PMAlertController는 Swift로 작성된 사용자 정의 알림창 컨트롤러입니다. 이 라이브러리를 사용하면 쉽게 사용자에게 메시지, 경고 또는 알림을 표시할 수 있습니다.
하지만 PMAlertController는 기본적으로 메시지 레이블만 제공하고 텍스트 입력을 받을 수 있는 기능은 제공하지 않습니다. 이 글에서는 PMAlertController에 텍스트 뷰를 추가하는 방법을 알려드리겠습니다.
1. PMAlertController 라이브러리 설치하기
먼저, PMAlertController 라이브러리를 설치해야 합니다. CocoaPods를 사용하면 간단하게 설치할 수 있습니다. 프로젝트의 Podfile에 다음과 같이 추가합니다.
pod 'PMAlertController'
그리고 터미널에서 다음 명령어를 실행하여 라이브러리를 설치합니다.
$ pod install
2. 텍스트 뷰 추가하기
PMAlertController에 텍스트 뷰를 추가하기 위해 커스텀 AlertView를 만들어야 합니다. 아래의 코드를 참고하여 작성해보세요.
import UIKit
import PMAlertController
class CustomAlertView: PMAlertController {
var textView: UITextView!
override init(title: String, description: String, image: UIImage?, style: PMAlertControllerStyle) {
super.init(title: title, description: description, image: image, style: style)
addTextView()
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
private func addTextView() {
textView = UITextView(frame: CGRect(x: 0, y: 0, width: 260, height: 100))
textView.layer.borderWidth = 1.0
textView.layer.borderColor = UIColor.lightGray.cgColor
contentView.addSubview(textView)
}
}
위의 코드에서는 PMAlertController를 상속받은 CustomAlertView 클래스를 정의합니다. 커스텀 AlertView 내부에 textView를 추가하고, 적절한 스타일을 설정하는 코드를 작성하였습니다.
3. 커스텀 AlertView 사용하기
이제 커스텀 AlertView를 사용해보겠습니다. 아래의 코드를 참고하여 사용해보세요.
let alertVC = CustomAlertView(title: "Custom Alert", description: "Please enter some text", image: nil, style: .alert)
alertVC.addAction(PMAlertAction(title: "OK", style: .default, action: { () -> Void in
// 사용자가 입력한 텍스트를 가져온다.
let text = alertVC.textView.text
// 입력한 텍스트를 처리하는 코드를 작성한다.
// ...
}))
present(alertVC, animated: true, completion: nil)
위의 코드에서는 CustomAlertView를 생성하고, 사용자가 텍스트를 입력하고 OK 버튼을 누를 때 호출되는 클로저에서 입력한 텍스트를 처리하는 코드를 작성하면 됩니다.
이제 PMAlertController에 텍스트 뷰를 추가하여 사용자로부터 입력을 받을 수 있게 되었습니다. 이 방법을 활용하여 알림창에 텍스트 입력 기능을 추가해보세요.