분류 전체보기
-
SwiftUI - symbolEffectSwiftUI 2024. 6. 25. 06:11
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 symbolEffect에 대해 알아보겠습니다 🙋🏻 symbolEffectsymbolEffect는 SF Symbol 즉, System Font Symbol의 스타일을 변경하고자할 때 사용하는 뷰 모디파이어 입니다.여기서 SF Symbol은 기본적으로 iOS에서 제공되는 시스템 아이콘이라고 보시면 됩니다 😃 해당 뷰 모디파이어는 iOS 17.0 이상에서 사용할 수 있으며, 정의는 아래와 같습니다. nonisolatedfunc symbolEffect( _ effect: T, options: SymbolEffectOptions = .default, value: U) -> some View where T : DiscreteSymbo..
-
SwiftUI - ContentUnavailableViewSwiftUI 2024. 6. 21. 07:30
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 ContentUnavailableView에 대해 알아보겠습니다 🙋🏻 ContentUnavailableView?해당 뷰 구조체는 사용자가 앱 콘텐츠를 사용할 수 없을때 표시되는 레이블과 추가 콘텐츠로 구성된 인터페이스입니다.즉, 데이터가 없을때 없다고 보여주는 뷰인데 이걸 직접 SwiftUI에서 쓰기 쉽게 제공해주는 역할을 하죠.다만, 어느정도 틀 규격이 있어서 완전히 다른 뷰를 보여주려면 직접 만들어야 합니다 🥲 그래도 한번 알아보시죠! 해당 인터페이스는 iOS 17에서 나와서 17 이상부터 사용할 수 있고, 정의는 이렇습니다. @MainActor @preconcurrencystruct ContentUnavailableView where ..
-
View Snapshot CaptureiOS 2024. 6. 18. 07:20
안녕하세요. 그린입니다 🍏이번 포스팅에서는 뷰 스냅샷을 캡쳐하는 방법에 대해 한번 구현해볼까 합니다 🙋🏻 우선 크게 두가지 방법이 존재해요.하나는, 현재 나타난 전체 화면의 스냅샷을 따서 캡쳐하는 방법과 또 하나는, 원하는 뷰 영역만 캡쳐하는 방법입니다. 그럼 한번 바로 알아볼까요? 전체 화면 캡쳐하기우선 코드부터 볼까요? func takeSnapshot() async throws -> UIImage { return try await MainActor.run { var totalImage: UIImage? guard let keyWindow = UIApplication.shared.connectedScenes .compactMap({ $0 as? UIWindowScene..
-
PhotosPicker 사용하기SwiftUI 2024. 6. 13. 19:43
안녕하세요. 그린입니다 🍏이번 포스팅에서는 SwiftUI의 PhotosPicker를 사용하여 사진 라이브러리에서 사진을 가져오는것을 학습해보겠습니다 🙋🏻 iOS 16.0 이전 기존에는 SwiftUI에서 PhotosPicker 같은 편리한 뷰 컴포넌트가 존재하지 않았기에 PHPhotoLibrary를 이용해 사용하곤 했습니다.그런데 이제 PhotosPicker을 통해 쉽게 SwiftUI스럽게 만들어볼 수 가 있게 되었어요. 그럼 바로 알아볼까요? PhotosPicker해당 컴포넌트는 사진 라이브러리 즉, 디바이스의 앨범에서 에셋을 선택하기 위해 Photo Picker를 띄우는 뷰 컴포넌트입니다.쉽게 말해, 앨범을 띄우는 기능을 가진 뷰라고 보시면 될것 같아요 🙋🏻 아쉽지만, 위에서도 한번 말했듯 해..
-
Haptic FeedbackiOS 2024. 6. 11. 19:30
안녕하세요. 그린입니다 🍏이번 포스팅에서는 iOS에서 Haptic을 사용하는 방법에 대해 알아보겠습니다 🙋🏻 Haptic Feedback우선 햅틱 피드백이라는것은 앱을 통한 인터랙션으로 사람들의 촉각을 자극하고 실제 세계에 대한 친숙함을 제공해줄 수 있는 기능입니다.예를들어, 흔히 많이 사용하는 스위치, 슬라이더, 셀렉션과 같은 컴포넌트들에서 사용자의 반응에 따라 진동이 울리는 햅틱 기능을 통해 확실한 상호작용을 주는것이죠. 특히 요즘에는 VisionOS까지 나왔으니 앱이나 게임 컨트롤러에서 햅틱 피드백이 많이 사용되고 있습니다. 애플에서는 아래와 같이 햅틱 패턴을 올바르게 사용할 수 있도록 몇가지 가이드를 제공하고 있습니다 😃 1️⃣ 시스템에서 제공하는 햅틱 패턴을 적절하게 사용2️⃣ 앱이나 게..
-
GitHub - Issue & PR TemplateGit 2024. 6. 5. 20:00
안녕하세요. 그린입니다 🍏이번 포스팅에서는 깃헙의 이슈 및 PR 템플릿을 사용하는 방법을 알아볼께요 🙋🏻 매번 우리는 깃헙을 이용하여 이슈 및 PR을 생성할때 통일된 양식을 팀원들끼리 정했다 하더라도 종종 까먹는 경우나 빼먹는 항목들이 존재할 수 있습니다.그렇기에, 우리 팀원들과 논의된 이슈 및 PR 템플릿 자체를 생성 시 고정으로 따르도록 설정한다면, 훨씬 시간적 비용을 절약할 수 있을거에요! 한번 이 간단한 설정을 어떻게 하는지 쉽게 적용해볼까요? Issue Template 적용하기가장 우선 예제 프로젝트를 하나 만들었습니다.레포를 새로 파고 파일 하나를 넣어뒀어요. 그럼 아래와 같이 레포에서는 이렇게 파일 하나만 들어간걸로 보이겠죠? 그리고 해당 레포를 클론한 로컬에서는 숨김 파일까지 본다면..
-
fastlane match를 통해 팀원들과 인증서 공유하기Fastlane 2024. 6. 3. 18:53
안녕하세요. 그린입니다 🍏이번 포스팅에서는 Fastlane match를 사용하여 팀원들과 인증서를 공유하고 또 배포까지 한번 해보도록 하겠습니다 🙋🏻 match?우선, 팀원들과 협업하면서 Fastlane을 이용하고 있었을때 기존이라면 앱 배포를 위해 테스트 플라이트에 올리거나 애플 로그인 및 인증서과 필요한 개발 환경 구축을 위해서 아래와 같이 하고 있었을거에요 🤔 1️⃣ 해당 앱 등록을 한 애플 디벨로퍼 계정 소유주가 다른 팀원들의 CSR을 Apple developer의 Certificate에 등록2️⃣ 인증서 다운로드하여 팀원에게 전달 > 팀원은 해당 인증서 키체인 등록 및 Xcode 연결3️⃣ 팀원의 UDID를 Apple developer에서 Devices에 등록4️⃣ Provisioning..
-
GitHub - Auto Assign 사용하기Git 2024. 5. 31. 08:33
안녕하세요. 그린입니다 🍏이번 포스팅에서는 GitHub에서 Auto Assign을 이용해보는 방법을 알아볼께요 🙋🏻 일반적으로 팀원들과 협업을 할 때, GitHub을 많이 이용하여 작업물을 PR(Pull Request)을 통해 리뷰를 요청하죠? 그럴때 아래와 같이 기본적으로는 이 리뷰어와 어싸인 섹션이 처음에는 비어있고, 직접 일일히 지정해줘야 합니다. 그런데, 이 리뷰어와 어싸인을 자동적으로 채워준다면 얼마나 편할까요?만약 팀원이 많을 경우 일일히 지정하는것에서 빼먹을 수도 있고 귀찮잖아요!? 그래서 이번 포스팅에서는 이 작업을 Auto Assign을 이용해 아주 간단히 처리하는 방법에 대해 알아보겠습니다 😃 Auto Assign가장 먼저 오토 어싸인을 설정 하기 위해 여러분들의 레포가 깃헙과 ..