일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 해시
- 안드로이드
- View
- 테스크
- 옵셔널
- 생명주기
- 서브스크립트
- RxSwift
- 프래그먼트
- concurrency
- async
- 차이
- 자바
- ios
- observable
- rx
- 백준
- 구조체
- 리스트뷰
- 클로저
- 이스케이핑
- 풀이
- 연산자
- 프로그래머스
- Swift
- weak
- Self
- Subject
- 알고리즘
- 스위프트
- Today
- Total
목록iOS/iOS 정리 (19)
study record
Framework란? Framework 공유된 recources (dynamic shared library, nib files, image files, localized strings, header files, and reference documentation)를 single package로 캡슐화하는 계층형 디렉토리입니다. *헤더파일, localizable파일, 이미지, 문서와 같은 추가 리소스까지 이 모든 것을 하나의 Bundle로 묶어놓은 것 Bundle: 서브 디렉토리 내부의 파일 디렉토리 Library 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합을 의미한다. 프로그램이 연결할 수 있는 패키징된 Object 파일들의 모음 공통점 : 프로그램을 쉽게 만들 수 있게 하는..
레이아웃 사이클 iOS 레이아웃 사이클은 세가지 단계로 이루어진다. 1. 제약 조건 (Constraints) - 오토레이아웃의 제약 조건 갱신 - 제약 조건은 뷰를 실제로 배치하는데에는 영향을 주지 않는다. - 제약 조건의 갱신은 뷰 계층구조에서 하위뷰에서 상위뷰의 순서로 이루어진다. 2. 레이아웃 (Layout) - 제약 조건을 바탕으로 레이아웃을 갱신한다. - 레이아웃은 구체적인 뷰의 프레임이다. - 이 단계에서 뷰의 Center와 Bounds를 결정한다. - 레이아웃의 갱신은 뷰 계층구조에서 상위뷰에서 하위뷰의 순서로 이루어진다. 3. 그리기 (Draw) - 레이아웃 단계에서 구한 프레임을 CoreGraphics를 사용하여 화면에 그린다. 뷰컨트롤러의 레이아웃 사이클 1. loadView() IB에..
IntrinsicContentSize 본질적인 콘텐츠 크기이다. 대부분의 view들은 기본적으로 컨텐츠 크기만큼의 size를 가지고 있다. UILabel, UIButton은 오토 레이아웃으로 구현할 때 제약사항으로 width와 height를 추가하지 않아도 오류가 나지 않는 이유는 intrinsicContentSize를 가지기 때문이다. UIView 같은 경우는 IntrinsicContentSize를 가지지 않으며, ImageView,TextView는 컨텐츠에 따라 변화한다. invalidateIntrinsicContentSize() view의 컨텐츠의 크기가 바뀌었을 때 intrinsicContentSize프로퍼티를 통해 size를 갱신하고 그에 맞게 오토레이아웃이 업데이트되도록 만들어주는 메소드이다...
UIView에는 layer 프로퍼티가 있다. layer는 CALayer의 객체이다. CALayer는 CoreAnimation Layer를 뜻한다. UIView는 하나의 CALayer(Root)만 가지고 있다. CALayer(Root)는 SubLayer를 여러 개 둘 수 있다. UIView의 SubView는 UIView의 CALayer(Root) 위에 얹혀지는 것이다. 뷰를 여러 개 쌓아서 표현하는 것 보다 레이어를 쌓아서 만드는게 퍼포먼스 측면에서 훨씬 가볍다. iOS 개발에서 보여지는 부분의 기본을 구성하는 UIView는 사실 그려지는 것이 UIView 자체가 아니라 내부 layer에 그려지는 것이다. 기본적으로 CALayer로 구성되어 있는 Layer는 그려지는 컨텐츠에 대한 캐시를 사용하며, 이는 ..