일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- xcode
- Info.plist
- human interface guidelines
- 스위프트
- viewcontroller
- @available
- delegation
- Navigation
- 야곰아카데미
- 아이폰
- 부트캠프
- 스타트업주니어로살아남기
- Modality
- 책후기
- NumberFormatter
- Structures and Classes
- View Life Cycle
- Codegen
- 독후감
- SWIFTUI
- UIResponder
- IOS
- contentInset
- 독서후기
- SWIFT
- Mock
- Failed to register bundle identifier
- mvvm
- roundingMode
- NotificationCenter
- Today
- Total
목록Software Engineering/iOS (76)
호댕의 iOS 개발

올해도 여느 해와 마찬가지로 WWDC가 시작됐다. 올해 WWDC에선 어떤 내용들이 있었는지 간단하게 정리해보고자 한다. 신제품 출시 15인치 맥북 에어가 새롭게 나왔다. 하지만 난 이미 맥북 M1 pro를 잘 쓰고 있기도 하고 크게 새롭다고 느껴지는 부분은 없었다. 맥북 에어에서도 큰 화면을 사용할 수 있다 정도...? iOS 17 등장 전반적으로 머신 러닝과 관련된 기능들이 많았고 아예 새롭게 등장하는 기본 앱과 기능들이 있었다. 연락처 포스터 일단 전화 앱에서 변경된 점은 연락처 포스터가 새롭게 등장했다는 것이다. 이는 사진 혹은 미모지로 꾸밀 수 있으며 잠금화면을 커스텀할 때와 유사하다. 이는 CallKit과 연동해서 사용이 가능하다. 또한 AirDrop을 통해 서로의 연락처를 쉽고 빠르게 공유할 ..

앱을 사용하다보면 사용자에게 리뷰를 할지 물어보는 모달을 본 적이 있을 것이다. 사용자에게 좋은 리뷰와 평점을 받는 것은 새로운 사용자를 유치하는데 큰 도움이 될 것이다. 요런 것들을 어떻게 사용자에게 띄워줄 수 있을까?? 일단 In-App Review의 경우 StoreKit의 SKStoreReviewController를 사용해주면 된다. if #available(iOS 14.0, *) { SKStoreReviewController.requestReview(in: windowScene) } else { SKStoreReviewController.requestReview() } iOS 14 이전에는 requestReview() 메서드를 사용해주면 되고 14 이후에는 파라미터로 WindowScene을 받아줘..

Tuist는 Xcode 프로젝트를 생성 및 관리해주는 도구로 최근 모듈화와 함께 많이 들어본 툴이었다. 이번 넥스터즈 프로젝트를 진행하면서 Tuist를 통해 프로젝트를 관리하도록 정해서 Tuist의 셋팅 과정을 기록해보려고 한다. 공식문서에도 처음 시작 관련해선 설명이 잘 나와있다. https://docs.tuist.io/tutorial/get-started Get started | Tuist Documentation Learn how to install Tuist in your environment and generate your first project. docs.tuist.io curl -Ls https://install.tuist.io | bash 이 명령어를 터미널에 입력해주면 이렇게 설치가 된..

저번에 들은 강의에 이어 다음 강의를 듣고 내용을 정리해보고자 한다. [SwiftUI] 1. SwiftUI 시작하기 (Stanford CS193P) - some View 이번 넥스터즈 22기에선 SwiftUI를 사용해서 프로젝트를 진행하기로 결정했다. 이전부터 SwiftUI 공부해봐야지... 마음만 먹었었는데 실제 프로젝트를 하게 되니 확실히 공부를 시작했다. 이전에 초 ho8487.tistory.com 저번에는 단순히 카드 뷰를 옆으로 나열하는 뷰를 그렸다면 이번에는 좀 더 복잡한 뷰를 그렸다. 1. 특정 조건의 Preview 추가하기 일단 처음에는 가볍게 저번에 거의 사용하지 않는다고 했던 PreviewProvider를 만져보자. struct ContentView_Previews: PreviewPro..

이번 넥스터즈 22기에선 SwiftUI를 사용해서 프로젝트를 진행하기로 결정했다. 이전부터 SwiftUI 공부해봐야지... 마음만 먹었었는데 실제 프로젝트를 하게 되니 확실히 공부를 시작했다. 이전에 초반만 들었던 스탠포드 강의를 들어보면서 SwiftUI를 한 번 훑어보려고 한다. https://www.youtube.com/watch?v=bqu6BquVi2M&list=PLpGHT1n4-mAsxuRxVPv7kj4-dQYoC3VVu&index=1 처음에는 이 강의에 대한 개요에 대해 설명해주시고 Xcode의 기본적인 사용법에 대해 설명을 해주시는데 이 부분은 일단 넘기고... 본격적인 SwiftUI 설명부터 듣기 시작했다. import SwiftUI @main struct StanfordSwiftUIApp:..

PickerView를 좀 더 커스텀하게 사용하려면 ActionSheetPicker-3.0 이런 외부 라이브러리도 존재한다. GitHub - skywinder/ActionSheetPicker-3.0: Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS. Quickly reproduce the dropdown UIPickerView / ActionSheet functionality on iOS. - GitHub - skywinder/ActionSheetPicker-3.0: Quickly reproduce the dropdown UIPickerView / ActionSheet functionality o... github..

인증서가 만료되는 기간이 얼마 남지 않아 인증서를 갱신해야 했다. 처음부터 인증서를 발급받아서 배포를 해본 경험은 있었지만 아직 인증서를 갱신해본 경험은 없었는데 이번 기회에 갱신을 하게 되면서 해당 내용을 정리해보고자 한다. 배포 관련 인증서 갱신하기일단 배포 관련 인증서를 갱신하는건 무척 간단하다. 만료될 인증서를 삭제하고, Xcode로 간다. Preference의 Accounts로 들어간다. Preference는 (cmd + ,) 단축키를 통해 빠르게 들어갈 수 있다. 여기서 Manage Certificates... 버튼을 누른다. 그리고 + 버튼을 누른 뒤 Apple Distirbution을 선택해서 추가해주면 된다. 이렇게 하면 Apple Developer 상에 추가가 되어 있다. Ap..

이전에 Center Paging을 구현하기 위해 Compositional Layout을 사용했다. 이를 사용하면 쉽게 Center Paging을 구현할 수 있었는데, 이를 사용하다가 iOS 15 미만에서 계속 강제종료되는 문제가 있어서 Flow Layout을 사용하면서 center paging을 구현하게 됐다. (당시 강제 종료되는 문제는 자동으로 셀이 넘어가는 배너에 Compositional Layout을 사용했었는데 iOS 15 미만 일정 사용자에게서 발생했다 -> 일부 사용자에게서만 발생한 문제라 정확한 원인은 파악하지 못했다) Flow Layout에서 Center Paging 구현하기 final class CenterPagingCollectionViewFlowLayout: UICollectionV..