일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- segue
- class
- mvvm
- list
- SWIFT
- 회고
- 고차함수
- http
- PushNotification
- singleton
- array
- protocol
- escaping
- Refresh
- 글또
- ScrollView
- Git
- NotificationCenter
- struct
- Switch
- SWIFTUI
- uikit
- viewlifecycle
- IOS
- 화면전환
- calendar
- self
- Observer
- apns
- error
- Today
- Total
목록IOS (94)
seong_hye, the developer

📘 List와 CheckBoxList item에 그냥 checkBox를 넣게 되면 개별 계산이 안되는 경우가 있어서개별로 활동가능한 경우를 정리해두려 작성 🔹Item 데이터 모델struct Item: Identifiable { let id = UUID() let name: String var isChecked: Bool} 🔹List에 적용struct ContentView: View { @State private var items: [Item] = [ Item(name: "사과", isChecked: false), Item(name: "바나나", isChecked: false), Item(name: "오렌지", isChecked: false), ..

📘 Calendar 날짜별 장식이 있는 일정관리를 표시하고, 단일 날짜 또는 여러 날짜를 사용자가 선택할 수 있도록 제공하는 기능캘린더 뷰를 사용하여 사용자가 커스터마이징한 추가 정보(ex_ 스케줄)가 있는 특정 날짜 표시또한 캘린더 뷰를 사용하여 하나의 특정 날짜, 여러 날짜 또는 날짜가 없는 날짜를 선택 가능 🔹Calendar란Foundation 프레임워크의 구조체달력 시스템에 따라 날짜를 계산하고 연도/월/일/요일 등 구성 요소 추출 및 연산을 도와줌 ✅ 날짜 더하기 / 빼기let today = Date()let calendar = Calendar.current// 5일 후let fiveDaysLater = calendar.date(byAdding: .day, value: 5, to: toda..

⚠️ Cannot use instance member ' ' within property initializer; property initializers run before 'self' is avaliable: Swift에서 self를 사용해야 하는 프로퍼티를 초기화 도중에 접근하려고 할 때 발생하는 오류🔍 발생한 경우배열을 let으로 생성 후 다른 배열의 값으로 넣어주려고 하다가 발생struct DataModel { let title: String let listData: [Int] let checkData: Bool}struct ContentView: View { var listData4: [1,2,3] var allList: DataModel = DataModel(title: "Va..

📘List Drop DownList 내 항목을 눌렀을 때 드롭다운처럼 하위 항목이 펼쳐지는 UIExpandable List 또는 Accordion List라고 부름각 항목의 펼침 상태를 추적하는 플래그가 필요함🔹항목 모델 정의struct DataModel { let iconName: String let title: String var destination: AnyView}struct DropdownItem: Identifiable { let id = UUID() let title: TitleModel let details: [DataModel] var isExpanded: Bool = false}🔹메인 뷰 - List를 활용한 DropDown@Binding va..
📘Swift - 디자인 패턴반복되는 문제를 재사용 가능한 구조로 해결해주는 아키텍처적 가이드Swift에서 사용되는 디자인 패턴은 소프트웨어 설계의 모범 사례iOS 앱 개발에서 특히 많이 쓰이며, Swift 언어의 특성과 잘 맞도록 함수형/구조체 기반으로도 진화해 옴 🔹디자인 패턴의 분류디자인 패턴은 일반적으로 다음 3가지로 분류됨분류설명생성 (Creational)객체 생성과 관련된 패턴구조 (Structural)클래스 / 객체의 조합 구조를 효율적으로 구성행위 (Behavioral)객체 간의 커뮤니케이션 패턴🔹Swift에서 자주 사용되는 디자인 패턴 🔍 싱글톤 패턴 (Singletion)오직 하나의 인스턴스만 존재해야 할 때 사용 (ex. 네트워크 매니저, DB 등)class NetworkMan..
📘Swift 구조적 특징Swift는 안전성, 성능, 현대적 문법을 모두 고려하여 설계된 언어로 다른 언어들과 구별되는 구조적 특징(structural characteristics)이 아주 뚜렷함 🔹정적 타입(Static Typing) 기반 언어변수의 타입이 컴파일 시점에 결정됨타입 추론도 가능하지만 실제로는 정적 타입 시스템let a: Int = 3 // type: Intlet one = 1 // type: Intlet a = "A" // type: Stringlet b: Character = "B" // type: Character ➡️ 장점컴파일 시 오류를 빨리 찾을 수 있음성능 최적화에 유리🔹값 타입(Value Type) 중심 구조struct, enum 등 값 타입(value ..

📘 오류 해결) List Refreshable 오류앱을 만들던 중 List가 Refresh 되지 않는 오류가 있었다처음 딱 떴을 때 refresh가 되었으면 좋겠는데 되지 않고 계속 문제가 되는 부분이 있어서시도해 본 여러 방법과 해결방안에 대해 작성해보려 한다.🔹 현재 어플 및 코드 축약윗쪽 탭바와 그에 맞게 아래 리스트를 둔 화면을 만들고 싶어서다음과 같은 코드를 활용해 아래 화면을 제작하였다VStack { ScrollView(.horizontal) { ... } TabView( .. ) { List { ... } .refreshable { ... } ... }} ❌ 문제 상황탭을 눌러 처음..