본문 바로가기
728x90

분류 전체보기302

[Swift] init과 Conveience init 그리고 ? init과 Conveience init 그리고 ? 1. init과 Conveience init convenience init과 init은 초기화 메서드(initializer)를 선언하는 데 사용되는 두 가지 다른 방법이다. 이 두 가지 방법은 다음과 같은 차이점이 있다. 1) Designated Initializer (init): 주요 초기화 메서드로, 클래스나 구조체의 주요 속성을 설정하는 역할을 한다. 주로 초기화 과정 중 다른 초기화 메서드를 호출하거나, 필수 속성을 설정하는 역할을 한다. 하나의 클래스나 구조체에는 여러 개의 init 메서드를 가질 수 있으며, 각각의 init 메서드는 다른 매개변수와 초기화 과정을 수행한다(오버라이딩). 2) Convenience Initializer (conve.. 2023. 10. 14.
[UIKit] collectionView 델리게이트 활용 시 주의사항 [UIKit] collectionView 델리게이트 활용 시 주의사항 최근 프로젝트를 진행하다 컬렉션뷰의 셀에 레이아웃이 적용이 안되는 상황을 맞이했다. sizeForItemAt 델리게이트 메서드를 extension에서 구현을 하고 사이즈를 맞췄는데, 예상대로 움직이지 않았다. image 사이즈가 45인데, 뷰 디버거를 활용해서 확인해보니, 외부에 선이 그어져있었고, 셀 자체의 크기가 50으로 설정이 되어 있는 것이다. width 45, height 65로 해서 정확히 사이즈를 맞춰놓았다고 생각했는데, 왜 안맞지? 라고 생각하고 있었다. 그러다 extension을 다시 보게되었는데, Delegate 설정에 문제가 있지 않을까 했다. extension SelectBoardingCrewModalViewCon.. 2023. 10. 10.
[Xcode] The file “.swiftlint.yml” couldn’t be opened because you don’t have permission to view it. [Xcode] The file “.swiftlint.yml” couldn’t be opened because you don’t have permission to view it. – Falling back to default configuration 관련 경고 develop 브랜치를 Pull 받고 빌드를 할 때, sandbox 관련 어떤 업데이트를 하라는 경고가 떠서 change를 눌렀다. 빌드를 하니 아래와 같은 경고가 떴다. 참고 블로그를 참고하여 해결하였다. 위의 것이 Yes로 되어 있었다. No로 해야 한다. Xcode 14에서 Apple은 스크립트 단계에서 소스 파일에 액세스하는 것을 차단할지 아니면 중간 빌드 개체에 액세스하는 것을 차단할지를 빌드 시스템에 알려주는 새로운 플래그 ENABLE_U.. 2023. 10. 7.
[UIKit] 그라데이션 라인 TableViewCell에 적용하기 [UIKit] 그라데이션 라인 TableViewCell에 적용하기 프로젝트를 진행중인데, 화면 좌측의 이어지는 그라데이션 라인을 구현해야 했다. 하나의 스크롤 뷰 안에 HStack을 두고, 긴 라인으로 구현을 할 수도 있을 것이다. 그러나, 추후 구현해야 할 사항 중, 그룹 추가뷰에서는 셀의 이동이 예상되었기도 했기에, TableViewCell 내부에 라인을 구현하는 것이 필요했다. TableViewCell은 각 셀이 나누어져있다. 그렇기 때문에, 하나의 그래디언트 라인을 그리고 화면에 표시한다는 것은 불가능한 일이다. 뭐, 스크롤뷰를 두 개로 나누어 하나는 테이블뷰셀, 하나는 라인뷰를 보여준다면, 가능할 수도 있겠지만,, 너무 복잡하다는 생각이 들었다. 각각의 선들이 테이블뷰 셀에 포함되지만, 각 셀에.. 2023. 10. 6.
[App Store] 앱 배포를 위한 과정 [App Store] 앱 배포를 위한 과정 앱 배포는 굉장히 멀고도 험난한 길이라고 생각하지만, 굉장히 간단하다. 만약, 완벽하게 버그가 없는 앱을 만들었다면, 그리고 배포 시에 부족함 없이 애플 팀이 알아듣게 설명하는 문서가 있다면, 한 번에 통과 가능하다. 서버리스 앱의 경우, 앱에 치명적인 결함이 없는 경우, 대부분 통과가 된다. 아래에서는 완전히 다 만들어진 앱을 앱 스토어에 배포하는 방법에 대해 알아볼 것이다. 아, 참고로 개발자 계정을 가지고 있어야 한다. 개발자 계정이 있는 사람의 Xcode에서 Archive를 해야 바로 App Store Connect에 빌드 파일이 올라오기 때문이다. 다들 알다시피 1년 단위의 개발자 계정은 13만 원이다. 1. 앱 스토어 커넥트에서 문서 작성하기 1) 로.. 2023. 7. 9.
[SwiftUI] HealthKit으로 현재 소모 칼로리 데이터 확인하기 [SwiftUI] HealthKit으로 칼로리 데이터 확인하기 MC3 프로젝트를 진행하고 있는데, HealthKit을 사용해서 칼로리 데이터를 가져와야 했다. 어떤 특정한 버튼을 누를 때마다 현재 소모한 칼로리를 가져오고 싶었다. 그래서 아래와 작업을 진행해 보았다. Signing & Capability 설정 All 옆에 있는 +Capability를 눌러서 HealthKit을 추가해 주어야 한다. HealthKit을 찾아서 추가해준다. 추가해야 권한 설정 화면이 나올 수 있다. Info.plist 설정 마찬가지로 Target의 Info 부분에서 Privacy - Health Share Usage Description을 넣어 주어야 한다. Privacy - Health Update Usage Descrip.. 2023. 7. 6.
728x90