[Extension] UIViewController + makeAlert 🍒

9492 ワード

UIalertControllerの拡張子の作成
🍎 parameters:
-title:通知ウィンドウのタイトル部分が表示されます.
-message:タイトルの下に表示されるメッセージ部分.
-okAction:OKボタンをクリックしたときの動作.
-キャンセルアクション:キャンセルボタンをクリックしたときの動作.
-完了:UI AlertControllerが解放されると、その動作状態.
extension UIViewController
{
   func makeRequestAlert(title : String,
                  message : String,
                  okAction : ((UIAlertAction) -> Void)?,
                  cancelAction : ((UIAlertAction) -> Void)? = nil,
                  completion : (() -> Void)? = nil)
   {
       
       let generator = UIImpactFeedbackGenerator(style: .medium)
       generator.impactOccurred()
       
       let alertViewController = UIAlertController(title: title, message: message,
                                                   preferredStyle: .alert)
       
       let okAction = UIAlertAction(title: "확인", style: .default, handler: okAction)
       alertViewController.addAction(okAction)
       
       
       let cancelAction = UIAlertAction(title: "취소", style: .cancel, handler: cancelAction)
       alertViewController.addAction(cancelAction)
       

       self.present(alertViewController, animated: true, completion: completion)
   }
   
   func makeAlert(title : String,
                  message : String,
                  okAction : ((UIAlertAction) -> Void)? = nil,
                  completion : (() -> Void)? = nil)
   {
       let generator = UIImpactFeedbackGenerator(style: .medium)
       generator.impactOccurred()
       
       let alertViewController = UIAlertController(title: title, message: message,
                                                   preferredStyle: .alert)
       
       let okAction = UIAlertAction(title: "확인", style: .default, handler: okAction)
       alertViewController.addAction(okAction)
       
       
       self.present(alertViewController, animated: true, completion: completion)
   }