| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- png
- 무한스크롤
- SwiftUI
- NSTextStorage
- nidthirdpartylogin
- contentalignmentpoint
- swift 모듈화
- 코드스쿼드
- TestFlight
- 클린 아키텍처
- Firestore
- JPG
- JPEG
- .pbxproj
- 테스트 타겟
- Cocoa Pod
- spm 에러
- 함께자라기
- 타뷸레이션
- Tuist
- xcode 엔터 표시
- 캐러셀
- github 시작하기
- NSTextStorageDelegate
- 팀 개발을 위한 git
- heic
- webp
- fetchdescriptor
- swiftdata
- xcode 공백 표시
- Today
- Total
목록2025/12 (2)
Sure, Why not?
@State뷰가 소유하는 값(Source of Truth) 을 저장하고, 그 값이 바뀌면 해당 뷰의 body를 다시 계산한다. 문서에 따르면,SwiftUI가 제공하는 저장소 관리 방식과 충돌할 수 있으므로,멤버와이즈 이니셜라이저에서 state를 설정하지 못하도록 state를 private으로 선언하기를 권장한다. 뷰와 그 하위 뷰에만 국한된 로컬 상태를 저장할 때 사용한다.항상 기본값으로 초기화되어야 하며, 선언 시점에 값이 필요하다. struct EditorView: View { @State private var text: String init(initialText: String) { self._text = State(initialValue: initialText) } ..
프로퍼티 래퍼를 직접 만들기 전에,SwiftUI나 이미 Apple의 여러 프레임워크에서 제공되는 프로퍼티 래퍼가 제공되고 있다면이미 검증된 시스템 기능을 다시 구현해서 비효율적인 작업이 될 수 있다. 그래서 먼저 SwiftUI 범위 내에서 Apple이 의도적으로 제공하는 검증된 프로퍼티 래퍼들을 정리한다면이후에 내가 필요한 경우의 커스텀 프로퍼티 래퍼를 설계하는 것이 생산적인 접근이라고 생각해서정리하고자 한다. Property Wrappers Documentation docs.swift.org 프로퍼티의 값이 어떻게 저장되거나 관리되는지에 대한 로직과 프로퍼티의 선언부와 분리해주는 Swift의 언어 기능이다.즉, 보일러플레이트 코드 하나의 타입으로 캡슐화하여서 선언부를 간결하게 만들고 의도를 명확히..