Swift
-
[SwiftUI] 화면에 구멍 뚫기 - .mask (iOS 15 부터)Swift/SwiftUI 2023. 5. 2. 23:13
struct ContentView: View { let colors: [Color] = [.red, .blue] var body: some View { LinearGradient(colors: colors, startPoint: .leading, endPoint: .trailing) .mask { Image(systemName: "flag.checkered") .font(.system(size: 128)) } .background(Color.blue.opacity(0.2)) .ignoresSafeArea() } }
-
[Swift] Protocol 을 처음 부터 공부해보자Swift 2023. 5. 2. 00:57
1. protocol 의 extension 에서 구현된 함수는 구조체 혹은 클래스에서 override 할수 없다. 2. extension 에서는 변수를 가지고 있을수 없다 (이건 protocol 뿐만은 아님) 3. protocol 의 변수는 property wrapper 로 감쌀수 없다 import Foundation protocol Fly { var altitude: CGFloat { get set } func cry() } extension Fly { mutating func fly() { altitude += 1.0 } } struct Bird: Fly { var altitude: CGFloat = 0.0 func cry() { print("howl") } } var bird = Bird() pri..
-
[SwiftUI] Preview 에서 Transition Animation 보기Swift/SwiftUI 2023. 4. 30. 00:24
struct ContentView_Previews: PreviewProvider { static var previews: some View { VStack { ContentView() } } } Previewing SwiftUI Transition Animations Being able to preview your transition animations right in Xcode will allow you to quickly make changes to get the perfect effect you're looking for. While updating SwiftUI Animations Mastery for iOS 15, I decided to take a deeper look into previewi..
-
[SwiftUI] onChange 는 같은 값이 재할당되어도 호출될까?Swift/SwiftUI 2023. 4. 29. 10:14
struct ContentView: View { @State var num = 0 var body: some View { VStack { Text("Tap me") .onTapGesture { didTapButton() } .onChange(of: num) { newValue in print(newValue) } } .padding() } func didTapButton() { num = 0 } } 안됨