본문 바로가기

전체 글54

[SwiftUI] @State 값 변경 감시하기 기존에는 Toggle, Text Filed, Picker와 같은 기본 제공하는 View에서 Binding 값들이 변경되는 것을 탐지 할 수 없었다. iOS 14에서는 다음과 같은 함수를 제공해주고 있어서 이를 활용하면 된다. @State private var isOn = false var body: some View { Toggle("제목", isOn: $isOn) .onChange(of: isOn) { value in print("\(value)") } } iOS13+ iOS 13에서는 onChange 함수가 없기 때문에 Binding 을 확장해서 사용하면 된다. extension Binding { func didSet(execute: @escaping (Value) -> Void) -> Binding.. 2021. 10. 28.
[Docker] Docker Toolbox VS Docker for Windows/Mac 최근 리눅스가 아닌 Windows와 Mac에서는 Docker Toolbox가 아닌 Docker for Windows 또는 Docker for Mac를 설치해서 사용한다. 상식상 두 구조를 이해하고 있으면 좋을 것 같아 아래와 같이 정리해본다. 설치 방법은 다른 블로그에 자세히 나와 있으니 여기서는 두 구조의 차이점을 간략히 소개한다. 1. 구조 Docker Toolbox Docker for Windows / Mac 2. 차이점 Docker Toolbox Docker for Windows/Mac 가상 네트워크 개수 2개 1개 외부에서 접근 2번의 포트 포워딩 필요 1번의 포트 포워딩 필요 Docker Toolbox는 PC에 리눅스 가상 머신을 생성한 뒤 도커를 설치하므로 가상 네트워크가 2개 생성된다. 내.. 2021. 8. 23.
[SwiftUI] LifeCycle 변경하기 (SwiftUIApp -> UIKit App delegate) 출처: https://webcache.googleusercontent.com/search?q=cache:cmQRJj6rQFIJ:https://mokacoding.com/blog/how-to-migrate-from-swiftui-to-uikit-life-cycle/+&cd=3&hl=ko&ct=clnk&gl=kr How to migrate from SwiftUI to UIKit App Delegate Life Cycle in Xcode | mokacoding This brief tutorial shows how to convert a SwiftUI app from the SwiftUI to the UIKit App Delegate life cycle in Xcode. Unfortunately, there i.. 2021. 8. 16.
[SwiftUI] Custom PageView 사용하기 PageTabViewStyle 은 iOS 14.0 이상 부터 사용가능하다. 1. iOS 14이상 Custom 하게 사용할 PageView를 작성한 후 struct PageView: View where SelectionValue: Hashable, Content: View { @Binding private var selection: SelectionValue private let indexDisplayMode: PageTabViewStyle.IndexDisplayMode private let indexBackgroundDisplayMode: PageIndexViewStyle.BackgroundDisplayMode private let content: () -> Content init( selection: .. 2021. 8. 16.