본문 바로가기

분류 전체보기213

UIButton 탭 시 image 색상 변경되지 않도록 설정하기 UIButton에 이미지를 설정하고, 탭을 하면 탭 되는 순간에 색상이 잠시 변경됩니다. 탭이 되었다는 효과를 주기는 하지만, 텍스트와 이미지에 색상을 설정해 주다보니 오히려 어색해 보이더라구요. 탭 전과 직후의 모습인데, 이미지 부분에 색상이 어둡게 변한 것을 확인할 수 있습니다. 이런 효과는 swift에서 기본적으로 제공하는 애니메이션인데, 다행히 disable이 가능합니다 :) `adjustsImageWhenHighlighted` 프로퍼티를 false로 설정해주면 탭 시 색상 변경 애니메이션이 비활성화 됩니다. private let keepMeSignedInButton: UIButton = { let button = UIButton() //... button.adjustsImageWhenHighli.. 2023. 7. 22.
Xcode cloud로 CI/CD 편리하게 사용하기 - private repo swift package 에러 해결방법 이번에 iOS meetup을 다녀와서 Xcode cloud로도 CI/CD가 가능하다는 것을 알게되었습니다. 최근 CI/CD를 적용해보고자 어떤 툴을 사용하는 게 좋을지 고민이었는데, 밋업 이후에 Xcode cloud에 궁금증이 생겨 한 번 사용해보게 되었습니다. Githun Actions나 Bitrise 등등을 사용할 때는 github에 secrets도 넣어주어야 하고 yml파일 설정도 해주는 등등 코드 사이닝을 위한 설정들이 손품이 많이 간다고 생각이 들었습니다. 한 번 설정해두면 이후에 편할테니 좋겠지만 설정해는 과정이 쉽지만은 않더라구요 😵‍💫 그런데 Xcode cloud를 사용하니 이런 설정들을 할 필요가 없었습니다. github 계정, App store connect와 연동만 해주면 되었습니다... 2023. 5. 21.
Firebase firestore 서브컬랙션(subcollection) 편리하게 조회하기 Firestore를 사용해보신 분들이라면 아시겠지만 컬랙션(collection)이라는 개념이 있습니다. 컬랙션 안에 document들이 있고, document에는 서브 컬랙션을 넣어줄 수 있습니다. 서브 컬랙션도 역시나 컬랙션이기 때문에 document들을 넣어 둘 수 있구요. 어떻게 하면 다수의 뎁스를 가진 구조에서 서브 컬랙션 내부 쿼리를 쉽게 할 수 있는지 알아보려 합니다. 제가 Firestore를 사용하며 가진 고민이 몇가지 있었습니다. 1. field가 없으면 미완성 document로 구분되어 쿼리가 불가능 Firestore를 사용하며 조금 특이하다고 생각했던게, document를 만들고 그 안에 collection이 생성되어 있더라도 field가 없으면 미완성된 doc으로 여겨져서 코드로 쿼리.. 2023. 5. 21.
iOS App 제출 시 iPad 스크린샷 제외 iOS 앱을 제출하는데, iPad 필수 스크린샷을 등록해야 한다는 문구가 나올 경우 Xcode 바이너리 빌드 시에 iPad가 포함되어 있어서 그렇습니다. TARGETS > General > Supported Destinations에서 iPad를 제거하고, 위의 상태에서 Archive하여 ASC에 올리면 됩니다. 그러면 더 이상 iPad 스크린샷을 요구하지 않을 것입니다 :) 참고자료 https://www.clien.net/service/board/cm_app/16239091 2023. 5. 14.
SPM 사용 시 XCTest에도 library 추가하기 Firestore와 FirebaseAuth를 사용하게 되어, TDD를 해보려는데 아무런 코드도 추가하지 않은 Test 파일 빌드가 되지 않았다. 알고보니 Project Target에 추가해 둔 Firebase 관련 라이브러리들이 Test Target에는 추가가 되지 않아서 발생하는 문제였다. 아래와 같은 에러가 발생 Test Target에 라이브러리를 추가하는 방법은 원하는 Target 선택 > Build Phases > Link Binary With Libraries 에 필요한 package들 추가 해주면 된다. Package 추가할 때 project target에 추가된 package를 정확히 추가해주어야 한다. 그렇지 않으면 계속 에러가 발생한다. 내 경우는 FirebaseStorage 패키지 대신.. 2023. 5. 6.
UICollectionViewCell Cell 플립 기능 구현하기 참고자료 https://www.google.com/search?q=ios+cell+flip+animation&rlz=1C5CHFA_enKR930KR930&sxsrf=AJOqlzU_ml6KOu4PCeYhzSIkqKvNKezJtg%3A1673961191456&ei=557GY_DCG9Lj-AbK7JKgDA&ved=0ahUKEwiw0ryx1878AhXSMd4KHUq2BMQQ4dUDCA8&uact=5&oq=ios+cell+flip+animation&gs_lcp=Cgxnd3Mtd2l6LXNlcnAQAzIFCCEQoAEyCAghEBYQHhAdOgoIABBHENYEELADOgQIIRAVOgoIIRAWEB4QDxAdOgcIIRCgARAKSgQIQRgASgQIRhgAUKcMWJ0hYOsiaANwAXgAgAG8AYgB5wy.. 2023. 1. 17.
반응형