Archive/패캠(초격차)

part5. (ch5) forEach를 이용하여 addSubView

lgvv 2022. 1. 7. 02:53

✅ 이번 시간에는 forEach를 활용하여 적용한 코드에 대해서 알아볼 예정이야.

 

진짜 다른 사람의 좋은 코드를 보는 것이 얼마나 휼룡한 일인지 새삼 느끼는 시간이 되는중!

 

🟠 Alert을 만드는 함수

func showCloseAlertController() {
        let alertController = UIAlertController(
            title: "작성중인 메시지가 있습니다. 정말 닫으시겠습니까?",
            message: nil,
            preferredStyle: .alert
        )
        
        let closeAction = UIAlertAction(title: "닫기", style: .destructive) { [weak self] _ in
            // 클로저 내에서 weak self는 개발자마다 아직도 의견이 분분하나, 혹시 모를 메모리 누수를 막을 수 있어서 사용하는거 권장
            self?.dismiss(animated: true)
        }
        
        let cancelAction = UIAlertAction(title: "취소", style: .cancel)
        
        [closeAction, cancelAction].forEach {
            alertController.addAction($0)
        }
        
        present(alertController, animated: true)
        
    }

 

 

🟠 내가 자주 사용하는 setupViews() 

func setupViews() {
        view.backgroundColor = .systemBackground

        [bookTitleButton, contentsTextView, imageView]
            .forEach { view.addSubview($0) }
}