728x90

 

2월 13일 일요일 / 21일 차

 


 

CH06

넷플릭스 스타일 영화 추천 앱 만들기

 

 

 

CollectionView가 표시될 때 방식

 

 

UICollectionView를 구현하기 위한 Class와 Protocol
Purpose Classes/Protocols
Top-level containment
and management
UICollectionView
UICollectionViewController
Content management UICollectionViewDataSource
UICollectionViewDelegate
Presentation UICollectionViewReusableView
UICollectionViewCell
Layout UICollectionViewLayout
UICollectionViewAttributes
UICollectionViewUpdateItem
Flow layout UICollectionViewFlowLayout
UICollectionViewDelegateFlowLayout

 

 

내용 요약
UICollectionView
UICollectionViewController
 - 시각적인 요소 정의
 - UIScrollView 상속
 - Layout 정보 기반 데이터 표시

UICollectionViewDataSource protocol
 - 필수 요소
 - Content 관리 및 Content 표시에 필요한 View 생성
UICollectionViewDelegate protocol
 - 선택 요소
 - 특정 상황에서 View 동작 Custom

UICollectionViewReusableView
UICollectionViewCell
 - Header, Footer
 - 재사용 가능

UICollectionViewLayout
UICollectionViewAttributes
UICollectionViewUpdateItem
 - 각 항목 배치 등 시각적 스타일 담당
 - View를 직접 소유하지 않는 대신 Attributes 생성
 - 데이터 항목 수정시 UpdateItem 인스턴스 수신

UICollectionViewFlowLayout
UICollectionViewDelegateFlowLayout protocol
 - Grid, line-based layout 구현
 - 레이아웃 정보를 동적으로 Custom



UICollectionView Compositional Layout (Size, Item > Group > Section > Layout으로 구성)
 - 복잡한 결과를 단순한 것으로 구성하기
 - 이 것만으로 모든 레이아웃을 작성 가능하게 하기
 - 프레임워크에서 자체 성능 최적화 수행

Size (너비와 높이의 값을 가짐)
 - Absolute(절대적인 값, 정확한 치수) - ex) widthDimension: .absolute(44), heightDimension: .absolute(44) 
 - Estimate(추정 값, 예상 값) - ex) widthDimension: .estimated(200), heightDimension: .estimated(100)
 - Fractional(분수, 비율) - ex) widthDimension: .fractionalWidth(0.2), heightDimension: .fractionalWidth(0.2)



SnapKit
 - 코드 베이스로 UI를 구현하고 Auto Layout을 고려해야할 때 직관적이고 간편하게 작성할 수 있도록 도와주는 오픈소스 프레임워크

 

 


 

 

StoryBoard 없이 코드로 구현하는 모습

 

 

복습할 내용

 

- UICollectionView에 대한 이해 및 사용법

- UICollectionView Compositional Layout에 대해

- SnapKit 사용법

 

 

 

 

오늘의 공부 후기

 

매 실습마다 StoryBoard를 이용해서 앱을 구현하다가 SnapKit을 사용해서 코드로만 구현해보니

직접적으로 볼 수 있는 UI가 없어서 헷갈렸지만 생각보다 구현이 간단했고 이러한 방법도 있다는 것을 새롭게 알게 되었습니다.

또한 평소 앱을 사용할 때 많이 보던 화면 구성이라 어떤 식으로 구현할지 궁금했는데 UICollectionView를 사용하여 

다양하게 구현 가능한 것도 알게 되어 유용한 강의였습니다.

 

 

 

 

 

 

 

https://bit.ly/37BpXi

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

 

 

 

728x90

+ Recent posts