UIKit, SwiftUI, H.I.G(35)
-
[UIAlertController] UIAlertController 기본 사용법부터 커스텀 방법까지 모두 정리해보자
1️⃣ UIAlertController 기본 용어와 사용법 Alert는 우리말로 "알리다", "경보"라는 뜻을 가지고 있다. iOS에서는 사용자에게 경고 메시지를 표시하거나, 사용자의 응답을 받기 위한 개체로 UIAlertController라는 기능을 제공하는데, 본격적인 코드를 살펴보기에 앞서 우선 UIAlertController에 쓰이는 용어부터 살펴보자. 가장 상위에 bold처리가 되어 사용자의 주의를 끄는 부분을 title이라 부른다. 그 아래 추가적인 세부 정보를 제공하는 설명 텍스트 부분을 message라 부르고, 아래 버튼들은 UIAlertAction이라는 메서드로 UIAlertController에 각각 연결을 해주어서 사용을 하게 된다. AlertController를 처음 생성하기 위해서는..
2021.10.01 -
[UITableView] Swipe Action을 구현하는 방법 (UISwipeActionsConfiguration, UIContextualAction)
1️⃣ Swipe Action 어떻게 구현하는데? 오늘 글은 테이블뷰에서 스와이프(밀기 동작)를 했을 때 보이는 액션인, Swipe Action을 구현하는 방법에 대해 알아보려 한다. TableView (= CollectionView)를 구현할 때, Delegate와 DataSource 프로토콜을 필수로 채택하고 그에 따른 세부 내용을 구현해주는 것은 iOS 개발의 아주 기본적인 상식이라고 말할 수 있는데, 오늘 구현해줄 Swipe Action은 UITableViewDelegate에 구현되어 있다. Apple 공식 문서를 살펴보면, Swipe Action은 2가지 형태로 구현해줄 수 있다고 한다. 하나는 왼쪽에서 액션을 주는 leadingSwipeActionsConfigurationForRow, 또 다른..
2021.10.01 -
[UIViewController] ViewController의 생명주기에 대하여 알아보자
0️⃣ ViewController의 생명주기는 무엇이고, 왜 공부를 해야하는거지?ViewController의 생명주기에 대해 들어본 적이 있는가?혹여나 들어본 적이 없다 하더라도, iOS 개발을 하고자 Xcode를 켜본 적이 있다면 적어도 아래 화면을 한 번쯤은 본 적이 있을 것이다.도대체 이 녀석은 어떤 기능을 하길래, Xcode에서 알아서 친절하게 만들어주는 건지 생각을 해본적이 있을까?이 녀석을 잘 이해하기 위해서는 "ViewController의 생명주기"라는 것을 알아야 한다.대충 생명주기(Life Cycle)라는 말만 들어도, 무엇인가가 태어나는 순간부터 죽는 순간까지의 주기를 떠올릴 수 있을 것이다.즉, 여기서는 ViewController의 생명주기이니까 iOS에서 화면을 구성하는 요소인 Vi..
2021.09.13 -
[UITableView] section별로 cell을 열고 닫을 수 있도록 만들기
앱잼을 하면서 구현하기 제법 어려웠던 화면이 있었다.같이 여행을 가는 구성원들끼리 성향 테스트 결과를 각 문항마다 확인할 수 있는 뷰였는데,테이블 뷰를 사용하고 테이블 뷰 헤더 내에 있는 버튼을 클릭하면, Cell이 확장됬다가 접혔다 하는 기능을 필요로 하는 화면이었다.사실 스스로 챌린지를 해보고 싶어서 이 화면을 맡겠다고는 했지만, 생각보다 issue가 많은 어려운 화면이라 같은 아요 선배님들의 도움을 많이 받아 완성할 수 있었다 ^_^우선 이 뷰를 어떻게 구성할 지부터 생각이 필요했다. 다양한 방법이 있을 수 있겠지만, 나는 아래와 같은 방법을 생각해보았다.우선, 크게는 TableView를 사용하면서 "이번 여행에서 우리는?"이라 써있는 상단 고정 뷰를 TableView의 header로 설정했다.아래..
2021.09.07 -
[UITableView] 테이블뷰에서 발생했던 Cell reuse 문제와 해결방법
아이폰에서 가장 많이 사용되는 뷰가 무엇이냐 묻는다면 TableView와 CollectionView라고 답할 수 있을 것이다. 이 두 개만 잘 배워놔도 대부분의 뷰를 구현할 수 있을 만큼 테이블뷰와 컬렉션뷰는 iOS 개발에서 정말 중요한 부분을 차지한다. 하지만, 초보 iOS개발자라면 누구나 한번쯤 TableView를 배우면서 아래와 같은 버그를 맞닥드린적이 있을 것이다. 테이블뷰에서 스크롤을 하게 되면 제멋대로 셀의 상태가 변해있는 충격적인 상황이 발생하게 되는 이런 상황... 오늘은 TableView에서 이 버그가 왜 발생하고, 어떻게 해결할 수 있는지에 대해 다루어보도록 하겠다. 1️⃣ 우선, TableView가 어떤 원리로 동작하는지를 정확하게 알아야 한다! 테이블뷰는 세로 스크롤을 할 때 같은 ..
2021.08.23