일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 고차함수
- 화면전환
- CoreImage
- NotificationCenter
- calendar
- singleton
- Refresh
- segue
- viewlifecycle
- self
- struct
- http
- Observer
- apns
- PushNotification
- 글또
- array
- ScrollView
- Git
- SWIFTUI
- mvvm
- IOS
- Animation
- uikit
- SWIFT
- escaping
- list
- Switch
- class
- error
- Today
- Total
목록SWIFTUI (30)
seong_hye, the developer
📘 DarkModeSwift에서는 iOS 13이상에서는 기본적으로 시스템 다크모드에 따라 UI가 자동으로 반응함시스템 색상을 사용하면 라이트/다크 모드에 따라 색상이 변경됨시스템 색상라이트 모드다크 모드.systemBackground흰색검정.label검정흰색.secondaryLabel회색연회색.systemGray중간 회색중간 회색 (어두움) ➡️시스템 색상 적용 방법Text("자동 색상 대응") .background(Color(.background)) .foregroundColor(Color(.primary)) 🔹 ColorSchemeSwiftUI에서 현재의 색상 모드 ( = 다크모드 / 라이트모드)를 나타내는 열거형(enum)다크 모드 대응 UI를 만들 떄 핵심적으로 사용되는 환경 값 ✅ Co..

📘 Toast사용자가 앱을 조작할 때 화면 하단에 잠깐 표시되는 알림 메시지 🔹 기본 Toast 생성 방법➡️ toast struct toast 메시지를 보여줄 기본 틀struct Toast: Equatable { var message: String //보여줄 메시지 var duration: Double = 1.5 // 보여질 시간 var width: Double = 300 // toast 가로 크기} ➡️ toastViewtoast를 화면에 어떻게 보여줄 지 보여주는 뷰struct ToastView: View { var message: String var width = CGFlat(200) var onCancelTapped: (() -> Void) var b..
📘 SwiftUI - View Life CycleSwiftUI의 View는 선언형(Declarative) 방식이기 때문에 UIKit과는 전혀 다른 생명주기를 가지고 있음SwiftUI는 상태(State)나 환경(Environment)의 변화에 따라 뷰를 다시 생성하고 그리기 때문에UIKit처럼 언제 뷰가 생성되고 사라지는가보다는 상태 변화에 따라 어떤 동작을 해야 하는가에 초점이 맞춰져 있음 🔹SwiftUI View Lifecycle 핵심 개념개념설명상태 기반@State, @Binding, @ObservedObject 등이 바뀌면 뷰가 재계산(re-render)됨구조체 뷰SwiftUI의 View는 구조체라서 상태 변경 시마다 새로운 뷰가 생성되는 것처럼 보임시스템 주도뷰 생성 / 파괴 시점을 직접 제어..
UIKit에서는 프로젝트가 만들어지면 AppDelegate와 SceneDelegate가 생성되듯이https://programming-seonghye.tistory.com/57 UIKit) AppDelegate & SceneDelegate 알아보기UIKit을 사용하기 위해 프로젝트를 만들게 되면만들어져있는 기능들에 대해 알아보려 한다📘 AppDelegateiOS 앱의 생명 주기(lifeCycle)와 시스템 이벤트를 관리하는 핵심 클래스앱이 실행될 때부터 종programming-seonghye.tistory.com SwiftUI에서 생성되는 App에 대해 알아보자📘App ProtocoliOS 14부터 도입된 앱 생명주기를 선언적으로 정의하는 새로운 진입점(entry point)@main과 함께 사용되어 ..

📘 SwiftUI - 화면 맨 위로 올라오기어플을 사용하다보면 스크롤 하다가 버튼을 눌러 화면의 맨 위로 올라오도록 하는 경우를 볼 수 있다해당 경우를 어떻게 구현했는지 정리해보려 한다. 🔹 기본 개념- ScrollViewReader: 뷰에 스크롤 위치 조작 기능을 부여할 수 있음 - .id( id 값 ) : 스크롤 목표 위치에 식별자를 붙임- .scrollTo( id 값 ) : 해당 위치로 스크롤 이동이 가능함🔹List에 버튼을 통해 위로 올리기struct ContentView: View { @State private var showButton = false let items = Array(1...100) var body: some View { ScrollviewR..

📘 FirebaseGoogle에서 제공하는 모바일 및 웹 애플리케이션 개발 플랫폼앱 개발에 필요한 다양한 백엔드 기능을 빠르게 구현할 수 있도록 도와줌서버를 직접 구축하지 않고도 인증, 데이터베이스, 알림, 분석 등을 활용할 수 있어 스타트업, 개인 개발자, 프로토타입에 자주 사용됨 Firebase = 서버 없이 앱의 백엔드 기능을 클라우드에서 처리할 수 있게 해주는 플랫폼 🔹 주요 기능기능설명Authentication이메일/ 비밀번호, SNS, Apple, Anonymous 로그인 지원Firestore / Realtime Database클라우드 기반 NoSQL 데이터베이스Cloud Storage이미지 / 동영상 등 파일 저장Cloud Messaging (FCM)푸시 알림 서비스Analytics사용자..

📘 KingfisherSwift에서 널리 사용되는 이미지 다운로드 및 캐싱 라이브러리특히 URL 기반 이미지 로딩을 간단하게 처리할 수 있고.내부적으로 강력한 메모리/디스크 캐싱, 다운로드 관리, 프리페치, 리사이징, 리사이클링 등을 제공 Kingfisher = Swift에서 이미지 URL을 비동기 로딩 + 캐싱까지 한 번에 해주는 라이브러리 🔹 주요 기능기능설명URL 이미지 다운로드imageView.kf.setImage(with: URL) 한 줄로 가능메모리 + 디스크 캐싱자동으로 처리 (옵션 조정 가능)SwiftUI 지원.kfImage 뷰로 간편하게 사용 가능이미지 가공리사이징, 블러, 라운딩, 필터 등 적용 가능프리페칭다가올 이미지 미리 다운로드재사용 최적화셀 재사용 상황에서 매우 효율적프로그레..

📘 Swift) Picker & DatePicker사용자의 선택을 입력받는 기본적인 선택 UI 컴포넌트 🔹Picker (일반 선택 목록 - 드롭다운, 휠 등)사용자가 리스트 중 하나를 선택할 수 있도록 함import struct ContentView: View { @State private var selectedMedia = "드라마" let medias = ["드라마", "영화", "애니메이션", "TV쇼"] var body: some View { Picker("미디어 선택", selection: $seletedMedia) { // 반복문을 사용하는 경우 ForEach(medias, id: \.self) { media in T..