기어가더라도 제대로

UICollectionView, UIScrollView 수업 필기 자료 본문

UIKit 기초

UICollectionView, UIScrollView 수업 필기 자료

Damagucci-juice 2022. 4. 21. 23:48

UIScrollView

내부에 컨텐트뷰를 담고 있다.
일반적으로 프로퍼티를 선언해야 사용할 수 있다.

원래 사용법

self.scrollview.contentSize = CGSize(width: , height:)

디버거 사용법

$po self.view.perform("recursiveDescription")        // 함수로 호출

$po self.view.value(for key: recursiveDescription)    // 속성으로 호출

ScrollView 만드는 순서

```

  1. UIScrollView.init()
  2. self.scrollview.contentSize = CGSize()
  3. UIView 추가, label -> contentsView (1000, 1000)
  4. content layout guide 연결 (leading, trailing, top, bottom + width(1000), height(1000))

UIScrollView 학습 키워드

Contnets Layout Guide VS Frame Layout Guide
ㄴ ScrollView 안에 들어가는 컨텐츠에 대한 Layout Guide
ㄴ Offset: 얼마나 이동한 것인지
ㄴ Bound 값을 가지고 보여주는 창의 위치만 Offset 값으로 조정해서 보여줌
(내부 컨텐츠들의 위치를 바꾼 것이 아님)
isPagingEnable

ScrollView Delegate

  • DidScroll
  • beginDragging
    • will
    • did

Collection View VS Collection View Controller

ㄴ   일부 채움            ㄴ  전체 채움

indexPath[Section: Row]

ㄴ cell
    ㄴ cell
        ㄴ cell
            ㄴ cell ... 도 가능은 하다.

CollectionView Diffable DataSource

변경된 사항만 다시 보여주는 Datasource? 상황상황마다 어떤 것이 보일지를 스냅샷 한다.

  • 기존 Data source
    • 바뀌는 부분이 있을 때마다 CollectionView 와 DataSource 가 교류
  • Diffable Data Source
    • Data Source { } + Collection View + SnapShot
    • 그릇의 역할 바뀐 점을 저장하다 그릇에 부어서 view 는 표시만 한다(?).

UICollection View CompositionalLayout

더 조합이 중요하고, 깊은 IndexPath를 다루는 경우

compositionalLayout

Comments