[swift] PMAlertController 모달 트랜지션 설정하기

PMAlertController는 사용자에게 경고, 확인 또는 입력을 받기 위한 커스텀 경고창을 제공해주는 CocoaPods 라이브러리입니다. 기본적으로 PMAlertController는 기본 모달 전환 효과를 사용하여 나타나게 되는데, 필요에 따라서 커스텀 모달 트랜지션을 설정할 수도 있습니다.

모달 트랜지션 설정하기

다음은 PMAlertController를 사용하여 모달 트랜지션 효과를 설정하는 예시 코드입니다.

import PMAlertController

func presentCustomAlert() {
    let customAlert = PMAlertController(title: "커스텀 알림", description: "이것은 커스텀 알림입니다.", image: UIImage(named: "custom_image.png"), style: .alert)

    let customTransition = CATransition()
    customTransition.duration = 0.3
    customTransition.type = .fade
    customTransition.timingFunction = CAMediaTimingFunction(name: .easeInEaseOut)

    customAlert.alertMaskLayer?.add(customTransition, forKey: "customTransition")
    self.present(customAlert, animated: false, completion: nil)
}

위의 코드에서는 CATransition을 사용하여 모달 트랜지션 효과를 설정합니다. 예시에서는 .fade 효과를 사용하였으며, 다른 효과를 적용하고 싶다면 type 속성을 변경하면 됩니다. duration 속성은 트랜지션의 지속 시간을 설정하고, timingFunction 속성은 효과의 타이밍을 조절합니다.

또한, customAlert.alertMaskLayer?.add(customTransition, forKey: "customTransition") 코드를 사용하여 트랜지션 효과를 alert 컨트롤러에 적용합니다.

이제 위의 예시 코드를 참고하여 PMAlertController의 모달 트랜지션 효과를 커스텀하게 설정할 수 있습니다.

참고자료