SWIFTUI

28
P_001 · SWIFT

SwiftUI에서 PreferenceKey가 안 먹어서 onGeometryChange로 갈아탄 디버깅

SwiftUI ScrollView에서 스크롤 위치에 따라 네비게이션 타이틀을 점진적으로 노출하려는데 PreferenceKey/GeometryReader 측정값이 갱신되지 않았다. onGeometryChange로 갈아탄 디버깅 회고.

MAY 15, 2026 · 7 MIN
#swiftui#scrollview#ongeometrychange
P_002 · SWIFT

SwiftUI에서 NantesLabel 살리기

SwiftUI Text로는 안 되는 자동 링크 탐지, 줄 수 제한, 더 보기 토글을 UIKit NantesLabel을 UIViewRepresentable로 래핑해서 해결한 패턴과 네 가지 함정 정리.

MAY 14, 2026 · 7 MIN
#swiftui#uikit#uiviewrepresentable
P_003 · SWIFT

`.ignoresSafeArea(.bottom)` 한 줄에 액션 버튼이 통째로 사라졌다

한 줄짜리 modifier가 자식 전부에 적용되면서 overlay 액션 버튼까지 home indicator 밑으로 끌어내린 사례.

MAY 14, 2026 · 3 MIN
#swiftui#ignoressafearea#safeareainset
P_004 · SWIFT

Bool 한 개에 결정 세 개 묶었을 때

공용 컴포넌트의 옵션 한 개가 사실은 결정 세 개였다. 정책이 갈라지는 순간 쪼개야 한다.

MAY 14, 2026 · 4 MIN
#swiftui#designsystem#apidesign
P_005 · SWIFT

Coordinator 시그니처 안 깨고 UIKit MVVM+C → SwiftUI MVI 갈아끼우기

상세 화면을 UIKit MVVM+C에서 SwiftUI MVI(Store)로 갈아엎으면서 Coordinator 외부 시그니처는 한 글자도 안 바꾼 이유와 방법 정리.

MAY 14, 2026 · 4 MIN
#coordinator#uikit#swiftui
P_006 · SWIFT

공용 SwiftUI 컴포넌트의 마진, 누구 책임이지?

padding 두 번 먹이면 안쪽으로 두 배 들어간다. 공용 컴포넌트 마진 정책을 정하자.

MAY 14, 2026 · 4 MIN
#swiftui#uikit#uihostingcontroller
P_007 · SWIFT

SwiftUI 펼침/접힘 애니메이션에 대한 나의 생각

UIHostingController 너머의 SwiftUI 애니메이션, 만져봐야 결국 step-jump가 이긴다.

MAY 14, 2026 · 5 MIN
#swiftui#uikit#uihostingcontroller
P_008 · SWIFT

UIKit ↔ SwiftUI 브릿징 — UIViewRepresentable vs UIHostingController 언제 뭘 쓸지

UIKit과 SwiftUI를 같은 앱에서 섞어 쓸 때 등장하는 네 가지 다리(UIViewRepresentable, UIViewControllerRepresentable, UIHostingController, UIHostingConfiguration)의 용도, 패턴, 함정 정리.

MAY 13, 2026 · 7 MIN
#swiftui#uikit#uiviewrepresentable