ios(86)
-
[Social Login] Access Token과 Refresh Token, 그리고 Auto Login까지
이번 나다 NADA 어플 릴리즈를 준비하면서 가장 많이 공부한 부분이 "로그인"과 관련된 부분일 거다.처음 아요끼리 담당 기능, 파트를 나눌 때, 내가 로그인을 맡겠다고 (겁 없이) 지원했었는데...왜 그랬는지... 모르겠다... 사실 로그인이 이렇게 공부할 점이 많고 많은 이슈가 생길지는 몰랐기 때문ㅇ.....아무튼 그래도 배운 점은 진짜 많았다.사실, 서버에 '서'자도 모르는 나였는데, 내가 도-약할 수 있었던 두 가지 계기가첫째는 라이브러리 Moya를 사용했을 때, 둘째는 소셜 로그인 API를 사용했을 때일 것이다.아무튼, 오늘은 내가 피나게(?) 공부했었던 로그인에 대한 추가적인 내용들을 정리해보는 시간을 가져보도록 하겠다.(공부했던 두 가지 소셜 로그인 방법(카카오톡, 애플)은 아래 포스팅에서 ..
2022.01.05 -
[Xcode] iOS 프로젝트에 별도의 폰트 파일을 추가해서 사용하고 싶을 때
프로젝트를 하다 보면, Xcode에 기본으로 있는 폰트 말고도 외부 폰트를 다운받아 사용하고 싶을 때가 있을 거다. 이런 경우, 단순히 프로젝트 파일에 드래그앤드랍 해주는 것 외에도 고려해야 할 추가 사항이 있어 이렇게 별도의 게시글로 정리를 해보고자 한다. 1️⃣ 폰트 파일 iOS 프로젝트에 추가해주기 일단 프로젝트에 폰트 파일을 끌어서 넣어주자. 이때, 중요한 점은 target을 프로젝트에 꼭 설정을 해줘야 한다는 점이다! (참고로 Xcode의 폰트 파일은 .wotf 파일을 제외한 .ttf .otf 파일은 모두 지원 가능하다고 한다! ^__^) 💡 Copy items if needed가 아래 사진 상으로는 체크가 안되어 있지만, 이렇게 되면 파일이 복사되는 것이 아니라 원본의 레퍼런스를 그대로 참조하..
2022.01.02 -
[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 -
[Swift] @IBInspectable, @IBDesignable을 사용해보자
Xcode에서 커스텀 뷰를 만들어 사용할 때, 신기하기도 하고 꿀팁이기도 한 속성에 대해서 오늘은 다뤄보려 한다. @IBInspectable, @IBDesignable이라는 속성인데, 이 친구들을 사용하면 "스토리보드에서 실시간으로 랜더링을 하는 것이 가능"하게 된다. 이것이 무슨 말인지는 글을 읽어보며, 하나씩 이해해보자. 1️⃣ 뜻부터 하나씩 알아보자 우선, Swift에서 @는 코드 자체의 특성을 가리킬 때 사용하는 키워드이다. 컴파일러에게 어떤 속성이 부여되었음을 알리는 역할이라고 생각하면 된다. IB는 Interface Builder의 줄임말이다. Xcode에서는 스토리보드를 가리킨다고 이해하면 된다. 즉, 우리가 흔히 사용했던 @IBAction func 키워드는 컴파일러에게 인터페이스 빌더와 A..
2021.12.20