일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 데드락
- 상호배제
- 알고리즘
- UserDefaults
- 오브젝트
- struct
- forEach
- 100 days of SwiftUI
- 운영체제
- COLOR
- Apple Developer Academy
- 동시성
- @state
- decode
- 프로세스 스케줄링
- Swift
- Algorithm
- 앨런
- 동기화
- Linked List
- 비동기
- Codable
- deadlock
- core data
- scrollview
- SwiftUI
- async
- 가상 메모리
- IOS
- 인프런
- Today
- Total
목록SwiftUI (47)
기어가더라도 제대로
.font(), .background, 와 같은 modifier 를 커스텀하게 만들어 보고 싶다는 욕구가 있으면 이번 포스팅은 도움이 될 것입니다. 아주 간단하게 ViewModifier 를 채택하는 Struct를 채택하기만 하면 됩니다. 방법 1 - 꾸미기 기능만 하는 Modifier struct Title: ViewModifier { func body(content: Content) -> some View { content .font(.largeTitle) .foregroundColor(.white) .padding() .background(.blue) .clipShape(RoundedRectangle(cornerRadius: 10)) } } 사용은 이렇게 합니다. .modifier 를 사용해서 하는게..
천리 길도 한걸음부터 라는 말이 있습니다. 아주 SwiftUI의 특성을 잘 나타내는 말입니다. 어떤 View 에 modifier를 붙여준다면 일어나는 일은 무슨 일일까요? 실제 예제에서 알아보죠 Modifier를 적용하면? Button("Hello, world!") { // do nothing } .background(.red) .frame(width: 200, height: 200) 200 * 200 인 버튼이 색상을 빨간색으로 채운 채로 나타날까요? "Hello, world!" 만큼의 배경 색상만 빨간색인 채로 나올까요? 정답은 후자입니다. modifier가 많아도 결국에 최종 view 가 나오는 로직은 N + 1 입니다. modifier를 적용하면 기존 View에 덧붙이는게 아닌, modifier가..
1. 성능상의 이유 Class라고 하면 상속간에 받는 모든 속성과 프로퍼티가 UIView 마다 상속됨 UILabel, UIButton, 등 생각해보면 많은 것들이 UIView나 UIControl로 부터 상속받는다. UIView 의 경우 합이 약 200개의 속성과 메서드를 물려받는다. Struct는 보이는 코드가 전부임 View가 Struct 인 이유임 2. 변수를 깔끔하게 변경하기 위해 Class 는 인스턴스가 let으로 선언되어 있어도 내부 프로퍼티가 var면 변경 가능 struct는 인스턴스가 let으로 선언되어 있다면 내부 프로퍼티가 var여도 변경 불가능 시스템 사용중에 상태 변경이 가능한 프로퍼티를 @State로 선언해서 변경가능성을 열어줌 3. View 의 뒤에는 뭐가 있을까? "아무것도 없다..