첫 macOS 앱 출시: 개발 회고 및 기술 공유iOS 앱을 macOS로 확장하면서 "SwiftUI니까 금방 되겠지"라고 생각했다. 결론부터 말하면, 생각보다 신경 쓸 부분이 많았다. 같은 Swift, 같은 SwiftUI인데도 플랫폼마다 다른 부분들이 꽤 있었고, App Store 제출 과정에서도 예상치 못한 요구사항들을 마주했다.이 글에서는 첫 macOS 앱을 출시하면서 겪은 경험들을 정리해본다.UI/UX 차이점System Color가 공유되지 않는다iOS에서 자주 사용하던 UIColor.systemBackground, UIColor.label 같은 시스템 컬러들이 macOS에서는 그대로 사용할 수 없다. macOS는 NSColor를 사용하며, 일부 시스템 컬러의 이름이나 동작 방식이 다르다.Swift..
struct InfiniteCarouselView: View { init(imageNames: [String], velocity: CGFloat = 1) { self.imageNames = imageNames var items: [Item] = [] items.append(contentsOf: imageNames.map { Item(id: UUID(), imageName: $0) }) items.append(contentsOf: imageNames.map { Item(id: UUID(), imageName: $0) }) items.append(contentsOf: imageNames.map { Item..
func test() async { await withTaskGroup(of: Int.self) { taskGroup in [3,1,2].forEach { i in taskGroup.addTask { print("시작 \(i)") try? await Task.sleep(for: .seconds(i)) return i } } for await element in taskGroup { print("완료 \(element)") } } print("모두 완료")}Task { ..
- Total
- Today
- Yesterday
- Xcode
- AppStore
- indicator
- picker
- macos
- localizable
- Authorization
- Apple
- 스위프트
- 엑스코드
- SWIFT
- TabBar
- 인디케이터
- localizing
- TabView
- Language
- 아이오에스
- 심사
- Reject
- swiftUI
- 테이블뷰
- 로컬라이징
- 다국어
- 프로그레스
- permission
- 리젝
- objective-c
- ios
- 현지화
- connect
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
