본문 바로가기

iOS

iOS 계층구조-4

728x90
반응형
SMALL

Cocoa Touch

Cocoa Touch는 iOS 운영 체제에서 사용되는 Objective-C 및 Swift 언어를 위한 UI 프레임워크입니다. 이 프레임워크는 iOS 앱을 개발하는 데 필요한 여러 가지 기능을 제공합니다. Cocoa Touch는 SwiftUI, UIKit, Foundation, Core Animation, Core Graphics 등의 프레임워크를 포함하고 있습니다. 이 프레임워크는 iOS 운영 체제에서 실행되는 모든 앱에서 사용됩니다. Cocoa Touch는 iOS 운영 체제에서 앱을 만드는 데 필수적인 프레임워크 중 하나입니다.

 

:0.. 우리가 쓰는 전반적인 SwiftUI, UIKit 간혹 나오는 Objective_C 모두 Cocoa Touch 에 속하는 프레임워크였군요.

아...Core Animation, Core Graphics는 따로 import 하지 않아도 SwiftUI안에서 쓸 수 있습니다!

예를 들어 이번에 2023 WWDC 학생챌리지에 참여하면서 온보딩에 사용한 이 코드 또한 Core Graphics 에 속합니다.

struct CustomShapeView: View {
    var locationX: Double
    var locationY: Double
    var body: some View {
        GeometryReader { geometry in
            Path { path in
                let width = geometry.size.width
                let height = geometry.size.height
                
                let radius = min(width, height) / 2.0
                let center = CGPoint(x: width / locationX, y: height / locationY)
                let holeRadius = radius * 0.1
                
                path.addRect(CGRect(x: 0, y: 0, width: width, height: height))
                let holeRect = CGRect(x: center.x - holeRadius, y: center.y - holeRadius, width: holeRadius * 2, height: holeRadius * 2)
                let holePath = UIBezierPath(ovalIn: holeRect)
                let holeCGPath = holePath.cgPath
                path.addPath(Path(holeCGPath))
            }
            .fill(style: .init(eoFill: true, antialiased: true))
            .foregroundColor(Color(red: 0, green: 0, blue: 0, opacity: 0.7))
        }
    }
}

 

예제처럼 동그라미를 제외한 전체가 덮인 뷰를 만들기 위해썼습니다. :0. 

728x90
반응형
LIST

'iOS' 카테고리의 다른 글

iOS 터치-2  (0) 2023.04.16
iOS 터치-1  (0) 2023.04.16
iOS 계층구조-3  (0) 2023.04.15
iOS 계층구조-2  (0) 2023.04.15
iOS 계층구조-1  (0) 2023.04.15