Square의 Github 주소는 여기 입니다.


Summary

Square는 UIAlertController, UIAlertAction 사용할때 작성하는 코드량을 줄여줍니다.


Usage

UIAlertAction의 OK 버튼 한개와, Title만 필요하다면 아래와 같이 사용할수 있습니다.

Square.display("Title")

타이틀과 메시지만 필요할때,

Square.display("Title", message: "Title")

타이틀, 메시지, 단일한 AlertAction만 필요할때,

Square.display("Title", message: "Title", alertAction: .default(messgae: "OK")) {
		print("Action!")
}

여러개의 AlertAction이 필요할때,

Square.display("Title", message: "Message", alertActions: [.cancel(message: "Cancel"), .destructive(message: "Detructive"), .default(messgae: "Default")]) { (alertAction, index) in
    if index == 0 {
        // Cancel action
        
    }else if index == 1 {
        // Destructive action
        
    }else if index == 2 {
        // Default action
    }
}

Action Sheet

preferredStyle을 actionSheet로 변경하여 사용할수 있습니다.

// 1
Square.display("Title", message: "Message", alertAction: .default(messgae: "OK"), preferredStyle: .actionSheet) {
            // Alert Action   
}

// 2
Square.display("Title", message: "Message", alertActions: [.cancel(message: "Cancel"), .destructive(message: "Detructive"), .default(messgae: "Default")], preferredStyle: .actionSheet) { (alertAction, index) in
    if index == 0 {
        // Cancel action
        
    }else if index == 1 {
        // Destructive action
        
    }else if index == 2 {
        // Default action
    }
}