터미널에서 Swift 패키지 만드는 방법 ▼ 1. 새로운 디렉터리를 만들고 해당 디렉터리로 이동합니다. ▼ 2. Swift 패키지 생성를 생성합니다. 옵션--name 패키지 이름 지정 swift package init --name MyLibrary--type 패키지 유형 지정 swift package init --type library--platforms 지원할 플랫폼 지정 swift package init --platforms iOS--package-path 패키지를 특정 경로에 생성 swift package init --package-path ./MyLibrary 패키지 열기 ▼ 3. open 명령어를 이용해서 Xcode 를 실행해 프로젝트를 열 수 있습니다. 빌드 및 실행 ▼ ..
xcframework 오류 앱스토어에 앱을 올릴때 라이브러리에 문제가 있다면 앱스토어에서 업로드를 거부합니다. 기존에 다양한 라이브러리들이 존재하지만 새롭게 추가된 xcframework의 경우 처음 추가해보기 때문에 문제가 발생해도 어떻게 처리해야 할지 난감하더군요. 다음은 에러에 대한 내용입니다. Asset validation failed Invalid bundle structure. The "AIA.app/Frameworks/sdk.framework/Frameworks/native_engine.framework/native_engine" binary file is not permitted. Your app cannot contain standalone executables or libraries, o..
▼ 스위프트 UI는 선언형 UI를 사용합니다. 예를 들면 다음과 같이 Color.red 에 .ignoresSafeArea() 라는 ViewModifier를 추가해서 화면에 SafeArea를 포함해서 전체화면을 빨간색으로 채울 수 있습니다. 마찬가지로 .frame을 이용해서 화면 사이즈를 변경할 수도 있습니다. ▼ 이번에는 ZStack을 사용해서 Color와 Text를 중첩해서 표현하겠습니다. ZStack의 alignment를 .bottomTrailing 옵션으로 Text를 우측 하단에 포함시킵니다. Text에도 역시 font, foregroundColor 와 같은 다양한 modifer가 추가되어있습니다. 때문에 코드가 복잡해지고 재사용하기 힘든 코드가 됩니다. ▼ ViewModifier를 확장한 Wate..
Lottie Animation ▼ 모바일 개발시 많이 사용되는 Lottie 애니메이션을 SwiftUI에서 구현하는 방법을 알아보겠습니다. 우선 새로운 패키지를 추가하기 위해서 로티를 사용하기 위해서 다음 주소를 복사합니다. (Swift Package를 사용하지 않고 CocoaPods을 사용해도 됩니다.) https://github.com/airbnb/lottie-ios.git ▼ Xcode의 File -> Add Packages... 메뉴를 통해 새로운 패키지를 추가합니다. ▼ 우측 상단에 검색창에 복사한 주소를 넣고 엔터를 치면 lottie-ios 패키지를 찾을 수 있습니다. 우측 하단에 Add Package 버튼을 눌러 패키지를 추가합니다. ▼ 로티 애니메이션 이미지를 다운로드 받습니다. 해당 서비스..
VStack, HStack, ZStack UIKit을 사용해서 개발을 할 때에도 Stack은 매우 유용하게 사용됩니다. 오토레이아웃을 사용하든 SnapKit을 사용하던 반드시는 아니지만 Stack을 사용하면 편리하게 UI 레이아웃을 만들 수 있습니다. 하지만 SwiftUI 개발을 하게 되면 Stack을 빈번하게 사용합니다. 특히 직관적이고 레이아웃을 바로 변경하는 모습을 볼 수 있어서 쉽게 레이아웃 구성이 가능합니다. 레이아웃의 가장 기본적인 형태인 Stack에 대해서 알아보겠습니다. ▼ 두 개의 Rectagle을 만들고 VStack으로 감싸면 다음과 같이 정중앙에 2개의 박스를 볼 수 있습니다. ▼ 마찬가지로 VStack 대신에 HStack을 사용하면 다음과 같이 가로로 배치된 UI를 볼 수 있습니다...
Xcode로 화면을 작업하는 일은 많은 노하우가 필요합니다. 다른 UI 툴에 비해서 기능도 많고 사용 방법도 굉장히 자유도가 높습니다. 제가 지금까지 몰랐던 기능이 있어서 소개해드립니다. 오토레이아웃을 사용하거나 SwiftUI를 사용하게 되면 라이브러리 기능을 많이 사용하게 되는데요. 단축키는 다음과 같습니다. Command + Shift + L ▼ 아니면 다음과 같이 디자인 화면 우측 상단에 + 버튼을 눌러도 라이브러리 창이 뜹니다. 그런데 문제는 이 창이 한 번 사용하고 마우스 포커스를 잃으면 창이 사라지는 단점이 있죠. 물론 바로 사라져서 다음 작업을 이어서 하기 때문에 편리한 점도 있습니다. 그런데 만약 다음과 같이 Option 키를 추가해서 단축키를 사용한다면 창이 분리되는 것을 확인하실 수 있..