
UIViewControllerRepresentable는 UIViewController를 SwiftUI 에서 사용가능하게 해주는 프로토콜이다.이 프로토콜을 채택하게 되면이 두 메서드를 필수적으로 구현 해야 한다.makeUIViewController(context:) 메서

저번글에서 Local Notification을 보냈었는데 이번에는 FCM으로 원격 푸시알림을 보내보려고 한다 !원격 알림은 앱이 실행 중이 아닐때도 앱을 사용하는 기기에 소량의 데이터를 푸시할 수 있다.원격 알림 전달에는 다음과 같은 핵심 구성 요소가 포함된다내 회사의

앱에서 푸시알림을 보내기 위해 Local과 Remote방식이 있다. Local은 앱 내에서 미리 푸시알림 보낼 컨텐츠를 설정하여 보내고 Remote는 원격으로 푸시알림을 보낼 수 있다. 이번 글에서는 Local로 푸시 알림 보내는 예제를 학습해 보겠다.\-> User

AVFoundation은 사진, 동영상, 오디오 등을 재생/캡쳐/처리 하는데 있어 만능 도구라 볼 수 있다.그 중 카메라로 캡쳐하는 기능을 만들거라 AVFoundation Capture subsystem을 사용해보겠다.캡쳐 아키텍처에 대한 이해가 있으면 좋기 때문에 간
들어가며 우선, 커스텀 네비게이션 바를 만들게 된 이유는 진행하고 있는 프로젝트에서 디자이너가 네비게이션 바의 디자인 시스템을 만들어놨고, 뷰마다 일일히 네비게이션 바를 만드는 것 보다 커스텀한 ViewModifier을 하나 만들고 재사용하는게 어떨까 싶었다.
들어가며 멀티터치에 대하여 글을 쓰게된 이유는, 프로젝트를 진행하던 중 멀티터치, 중복터치를 막아야 하는 상황이 있었고 해결한 방법을 공유하기 위해서다. 우선, swiftui 에서는 멀티터치를 지원하고 있는데 멀티터치는 여러개의 콘텐츠를 동시에 탭할때 하나의 콘텐츠만

들어가며 진행하고 있는 프로젝트에서 토스트 팝업을 띄우게 되었는데, 토스트 팝업을 띄우는게 처음이라 어떻게 해야할 지 감이 안 잡혔습니다. 토스트는 sheet나 fullscreencover를 이용해서 띄우지 않기 때문에 더 난감했습니다. 그래서 그냥 커스텀 토스트를

TCA에서 NavigationStack과 TabView, 그리고 path를 사용하여 계층적 이동을 해야하는 상황이 있었다. 그러나 뜻대로 되지않고 탭뷰에서 디테일뷰로 이동하지 못하거나 디테일뷰의 디테일뷰로 이동하지 못하는 이슈가 있었다. 또한 NavigationStac

작년에 첫 프로젝트를 진행하면서 커스텀 알람을 만들기 위해 CustomAlert, CustomDialog 등을 검색해보며 삽질해서 겨우겨우 만들었던 기억이 있다. 그러나 그렇게 구현한 커스텀 알람, 팝업은 너무나도 구렸고 ZStack을 어떻게 활용하고 ~ 레이아웃 어떻

Bottom Drag Sheet를 커스텀으로 만들게 된 이유1\. .sheet() 모디파이어를 이용\-> 탭뷰 뒤에 바텀시트를 두고 싶었지만 아무리 해도 바텀시트가 탭뷰 앞으로 와서 탭뷰를 계속 가리게 되는 이슈가 있었다.2\. UIKit를 활용해 커스텀 뷰 생성\->

Lottie 패키지를 사용하면서 겪었던 오류를 해결해 보았다.이전글에서 Lottie 라이브러리를 통해 애니메이션 적용방법 예제를 사용해봤는데 빌드할때 오류가 발생했는데 다음과 같은 오류가 계속해서 발생했다.이 오류를 해결하기 위해 패키지도 삭제했다가 다시 설치해보고 온

Lottie\-> JSON 형식을 애니메이션으로 렌더링 해주는 라이브러리SwiftUI를 사용하면서 디자이너가 작업한 애니메이션 에셋을 넣고 싶을때 'Lottie' 라이브러리를 사용하면 손쉽게 적용할 수 있다.간단하게 예제를 살펴보자면File -> Add Package
이전글에서 JSONDecoder와 MockData에 대해 알아보았는데 커뮤니티 예제를 통해 실습하려고한다. 이 화면을 구성하는 데이터들은 모두 MockData이며 JSONDecoder로 파싱한것이다. > # 실습하기 Model파일, Json파일, Parser파일,
팀 프로젝트에서 커뮤니티 게시글화면을 개발하던중 현재는 실제 데이터가 없기 때문에 임의로 데이터를 만들어내기로 했다. > # Mock Data Mock Data = 임의로 만든 데이터 임의로 만든 데이터를 Mock Data라고 한다 mock의 사전적 정의를 찾아보면

팀프로젝트로 게시물화면 ui를 구성하던 중 이미지 크기가 커지면 다른 요소들을 가려버리는 이슈가 있었습니다. 이미지 코드를 보면 이렇게 되있는데 이걸 해결하기 위해 alignment : topLeading을 추가한 결과 이번에는 위에 Text들은 안가려졌지만 밑