일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- 글또
- singleton
- 고차함수
- IOS
- escaping
- SWIFTUI
- viewlifecycle
- self
- SWIFT
- mvvm
- Animation
- segue
- PushNotification
- calendar
- ScrollView
- 화면전환
- Switch
- list
- uikit
- NotificationCenter
- http
- class
- error
- Observer
- struct
- apns
- CoreImage
- Git
- array
- Refresh
- Today
- Total
목록IOS/SwiftUI (25)
seong_hye, the developer
📘DispatchGroupGCD(Grand Central Dispath)의 기능 중 하나로, 여러 비동기 작업들을 그룹으로 묶어서전부 끝났을 때를 감지하거나 동기적으로 기다렸다가 다음 코드르 실행할 때 사용비동기 작업들의 완료를 추적하고 조율하는 데 사용됨(각 작업이 언제 시작하고 완료되는지 추적하여 모든 작업이 완료된 시점을 감지할 수 있음) 🔹기능- 여러 개의 비동기 작업(큐에 올라가는 블록)을 그룹핑- 모든 작업이 끝났ㅇ르 떄 알림(Notify)를 받거라, 동시 대기(Wait) 가능- 네트워크 요청, 파일 I/O, 연산 등 여러 작업을 동시에 처리하고 결과를 합쳐야 할 때 유용 🔹주요 메서드enter() / leave()그룹에 "작업 시작" 알림, 카운터를 증가시킴 ~> enter()그룹에 "..
보호되어 있는 글입니다.

📘 이미지 명도와 채도 조절 🔹 주요 필터CIColorControls이미지의 색상 속성을 조절할 수 있는 가장 기본적이고 유용한 필터kCIInputBrightnessKey: 명도 조절 ( -1.0 (어두움) ~ 1.0 (밝음), 기본값: 0.0 )kCIInputSaturationKey: 채도 조절 ( 0.0 (흑백) ~ 2.0 (더 진한 색감), 기본값: 1.0)kCIInputContrastKey: 대비 조절🔹 예시 코드 - SwiftUIimport CoreImageimport CoreImage.CIFilterBuiltinsstruct ContextView: View { // 원본 이미지 로드 @State private var originalImage = UIImage(named: "ex..
보호되어 있는 글입니다.

📘 Path벡터 그래픽 기반 2D 도형을 정의하는 구조체직접 좌표를 찍고 연결해서 원하는 도형을 만들 수 있음🔹 기본 정의struct Path { var elements: [Path.Element] // 선, 곡선, 이동 등으로 이루어진 요소}🔹 명령어 🔍 시작 / 닫기함수설명 move(to: CGPoint) 경로의 시작점을 지정 (펜을 들어서 새 좌표로 이동) closeSubpath() 현재 경로를 닫음 (마지막 점 -> 시작점 자동 연결) 🔍 직선함수설명 addLine(to: CGPoint) 현재 위치에서 지정한 점까지 직선 추가addLines(_ points: [CGPoint]) 현재 위치에서 여러 점들을 차례로 직선으로 연결 addRect(CGRect) 사각형 추가 addRects([CG..

📘 이미지(사진) 권한 설정iOS에서는 앱에 사진 창 또는 카메라를 사용하려고 할 때 권한 창을 통해 사용자의 동의를 얻어야만 한다권한 창을 띄우고 사용하는 방법에 대해 알아보려 한다 🔹 Info.plist에 권한 문구 추가 / Info 설정 창에서 권한 추가➡️ Info.plist에 사용될 키키 이름설명NSPhotoLibraryUsageDescription포토 라이브러리 읽기 / 저장 권한 요청 시 표시NSCameraUsageDescription카메라 사용 시 표시NSPhotoLibraryAddUsageDescription사진 라이브러리에 저장만 하는 경우 ➡️ Info 설정 창Info.plist가 아닌 Targets > Info 창에서 권한을 추가하는 방법🔹 권한 요청 및 상태 확인Photos ..

📘 matchedGeometryEffect두 개 이상의 뷰를 같은 것으로 인식시켜서 레이아웃이 바뀔 떄 자연스럽게 이어지는 애니메이션을 만들어주는 도구히어로 애니메이션 (Hero Animation) 이라고 불림 🔹개념SwiftUI는 상태 변경 시 View를 새로 다시 그림-> 일반적으로는 기본 뷰가 사라지고, 새로운 뷰가 나타나는 전환이 일어남matchedGeometryEffect(id:in:)을 사용하면, 두 뷰를 같은 ID로 묶어서 SwiftUI가 "같은 요소"라고 인식SwiftUI는 위치, 크기, 모양, 클리핑, 코너 반경 등을 자동으로 보간해줌🔹문법.matchedGeometryEffect(id: "sharedID", id: namespace)id: 같은 그룹 안에서 고유하게 뷰를 매칭시킬 식..

📘 Transition뷰의 존재 유무의 변화를 애니메이션뷰를 이동할 때의 개념보다는 뷰를 보여지게 하거나 사라지게 하는 애니메이션의 개념.transition(_:)으로 선언하여 사용 가능들어가는 인수는 AnyTransition트랜지션이 실행되려면 상태 변경을 애니메이션으로 감싸야 함withAnimation { ... } 또는 .animation🔍 AnyTransition.opacity페이드 인 / 아웃.scale확대 / 축소로 등장 / 퇴장.move(edge: .top/.bottom/.leading/.trailing)가장자리에서 슬라이드.slide부모의 leading -> trailing로 슬라이드 (언어 방향성 영향).identity트랜지션 없음 (디버그, 조건부 조합에 사용)🔹결합 및 비대칭 기..