SWIFT(87)
-
[UITableView] Delegate를 사용하지 않고 테이블 뷰 cell index값을 가져오는 방법
원래 iOS 개발에서, 어떤 특정한 값을 가져오거나 전달하기 위해 가장 많이 사용하는 방법은 delegate 패턴을 활용하는 방법이다. 하지만, 오늘 다룰 내용은 테이블 뷰에서 delegate 패턴을 사용하지 않고도, 클릭한 cell의 index값을 가져오는 방법을 다뤄보려고 한다. 우선, cell은 이렇게 생겼다. cell에 있는 여러 element 중에서 오늘은 가장 왼쪽에 있는 pinButton을 클릭했을 때를 가정하고 내용을 다뤄보도록 하겠다. UITableViewDataSource에 있는 셀을 통해 먼저 접근해주자. Cell에 있는 버튼에 타깃 함수(addTarget)를 추가해 버튼이 클릭되었을 때, 액션을 인식할 수 있도록 먼저 추가해줄 것이다. func tableView(_ tableView..
2022.01.02 -
[Social Login] 소셜 로그인을 구현해보자! 2탄 - Apple 로그인
아주 예전에 작성했던 "소셜 로그인" 시리즈, 오랜만에 그 2탄을 써보려고 한다. 오늘은 "Apple 로그인"에 대해서 알아보도록 하자. (👇🏻예전 카카오톡 소셜 로그인을 다뤘던 글은 아래에서 확인할 수 있습니다!👇🏻) [iOS] 소셜 로그인을 구현해보자! 1탄 - 카카오톡 로그인 오늘은 최신 어플이라면, 빠지지 않고 가장 기본적으로 들어가는 기능 "소셜 로그인"에 대해 시리즈로 글을 다루어보려 한다. 오늘은 그 첫 번째로, 카카오톡 간편 로그인에 대해 다뤄보겠다. Kak mini-min-dev.tistory.com 예전 카카오톡 로그인을 다뤘을 때는 "카카오 개발자 페이지"에 나와있는 공식 설명을 따랐는데, 오늘은 애플의 공식문서에 나와있는 설명을 기반으로 따라가 보려 한다. Apple Develope..
2021.12.27 -
[iOS] UIColor와 CGColor의 차이점을 알아보자
최근, 다크 모드 대응에 관해서 빡세게 공부를 하고 있는 와중에 UIColor가 들어가는 부분과 CGColor과 들어가는 부분이 엄격하게 구분되어 있는 것을 보고 이 두개의 차이점이 궁금해졌다. 그래서 오늘은 한번 UIColor와 CGColor의 차이점을 알아보려 한다. 일단, 공식문서를 살펴보면 UIColor는 색상 데이터와 불투명도를 저장하는 개체, CGColor는 색상 해석 방법을 지정하는 색상 공간과 함께 색상을 정의하는 구성요소 집합이라는 설명이 쓰여 있었다. 아직, 감이 잘 안오지만, 더 직접적으로 비교해보자. 가장 크게 비교할 수 있는 부분이 등장했다. UIColor는 우리가 정말 많이 그동안 다루었던 UIKit 프레임워크의 하위 요소, 즉 User Interface를 다루는 곳에서 지정하는..
2021.12.17 -
[UITapGestureRecognizer] UILabel을 클릭가능하도록 만들기
원래 액션 이벤트를 담당하는 UI 요소는 "버튼"이다. 하지만 iOS 개발을 하다 보면, 경우에 따라 일반 뷰에나 이미지 뷰, 라벨에도 버튼을 구현해야 할 때가 생기게 된다. 오늘은 이럴 경우에, 버튼이 아닌 요소에도 Action을 어떻게 표현할 수 있는지 알아보려 한다. (코드에서는 UILabel을 예시로 들지만, 요소를 다른 걸로 바꿔주기만 하면 모두 응용해서 사용 가능하다.) 전체적인 기능 구현에 대한 프로세스는 아래와 같다. 1️⃣ Action을 주고 싶은 요소에 대해 Outlet을 만든다. 2️⃣ UITapGestureRecognizer를 이용해 클릭을 인식할 수 있도록 만든다. 3️⃣ 클릭했을 때, 구현할 코드를 함수에 작성한다. 4️⃣ isUserInteractionEnabled를 true로..
2021.12.17 -
[Foundation] UserDefaults를 사용해서 데이터를 전달하는 방법
iOS에서는 ViewController 간 데이터를 전달하는 방식을 크게 2가지로 나눌 수 있다. 데이터를 직접 전달하는 직접 전달(동기) 방식과, 데이터를 저장하고 필요할 때 꺼내오는 방식인 간접 전달(비동기) 방식으로 나누어진다. 오늘은 이 두 방식 중에서, 필요할 때 값을 꺼내올 수 있도록 쓸 수 있는 비동기 방식 중, UserDefaults라는 것을 사용하는 방법에 대해 공부를 해보려고 한다. UserDefaults란 iOS 프로젝트 내에 있는 데이터 저장소라고 이해하면 된다. 기본 프로젝트 폴더를 보면 info.plist라는 파일이 있는 것을 확인할 수 있는데, UserDefaults도 plist처럼 Key-Value 형태로 값을 저장하고 꺼내올 수 있는 것이 특징이다. UserDefaults ..
2021.12.17