본문 바로가기

iOS

[iOS] UIAlertController 알림이랄까. 알람이랄까.


 

 

 

 

UIAlertController

사용자에게 알림 메시지를 보여주는 객체입니다.

 

위의 그림과 같이 알림창을 사용자에게 보여줄 수 있어요!! 

 

 

UIAlertController는 UIViewController를 상속 하고 있습니다. addAction으로 액션을 추가할 수 있고. present(animated:completion)으로 나타낼 수 있습니다. 

 

 


 

 

위에 만든 알람의 코드입니다. 버튼을 눌렸을 때 실행되도록 했습니다. 각각 코드에 대해 알아볼까요!

 

1. 먼저 UIAlertContriller클래스의 인스턴스를 초기화 합니다.

title - 알림의 제목

message - 알림을 사용자에게 보여준 이유

preferredStyle - actionSheet, alert 두개의 스타일이 있습니다. 

 

 

2. UIAlertAction 인스턴스를 만들어 줍니다. 

title - 액션의 제목

style: action의 스타일 cancel, default, destructive 세개의 스타일이 있습니다.

handler: action버튼이 눌려지고 나서 이후에 실행되는 클로저

 

(+클로저를 생략해서 표현하려고 했었는데. _ in 이라도 써줘야 되더군요...)

 

UIAlertContriller의 preferredStyle = actionSheet 스타일 - 바닥에 present 됩니다.

또한 액션의 스타일 설정 값들  cancel, default, destructive가 있으며 default만 넣었을 때, default, cancel만 넣었을 때, default,cancel, destructive 세개 넣었을 때 입니다. cancel은 bold가 되어있고 맨 밑으로 위치가 설정됩니다. 그리고 destructive는 빨갛게 글자색이 바뀝니다.. default는 default.

 

 

UIAlertContriller의 preferredStyle = alert 스타일 - 가운데 present 됩니다.

preferredStyle의 값을 액션 갯수에 따라 default만 넣었을 때, default, cancel만 넣었을 때, default,cancel, destructive 세개 넣었을 때 입니다. cancel은 vold가 되어있고 2개일 때는 왼쪽에 3개일 때는 맨 밑으로 위치가 설정됩니다. 그리고 destructive는 빨갛게 글자색이 바뀝니다.. default는 default.

 

3. addAction

UIAlertContriller에 UIAlertAction을 추가 시켜줍니다.!

4. present

UIAlertContriller을 present!!!!

5. 끝.

 

 


정리

 UIAlertController를 공부하면서 예전에 공부 했을 때는 잘 이해 되지 않았습니다. 지금은 이렇게 직접 하나씩 코드를 적고 UI를 보고 나니 UIAlertController의 여러 스타일들 그리고 액션의 스타일들이 잘 정리가 되었습니다. 특히 Action의 handler부분이 버튼을 클릭하고 난뒤에 실행되는 클로저인데 마치.. 쉘스크립트의 CMD와 ENTRYPOINT와 비슷하다고 느껴져서 이해가 잘되었고 재밌었습니다.

 

+ 마주친42앱에 적용시켜야지~~

 

 

 

 


 

'iOS' 카테고리의 다른 글

[iOS] 간단한 메모리 구조 - remind  (0) 2021.03.28
[iOS] Xcode Preview기능  (0) 2021.03.22
[iOS] UITextField Placeholder 색바꾸기!  (0) 2021.03.07
[iOS] Indicator 간단하게 써보기 ㅎ  (0) 2021.02.22
[iOS] Autolayout 코드로만  (0) 2021.02.20