카테고리 없음

23.11.02 뷰(View)와 레이어(Layer)의 개념 / prepareForReuse의 개념

oong2 2023. 11. 2. 15:12

뷰(View):

- 사용자 인터페이스 (UI)의 구성 요소 중 하나이다.

- 버튼, 텍스트필드, 이미지, 레이블 및 사용자 지정요소 등 모든 UI 요소가 뷰이다.

- 사용자에게 정보를 표시하거나 사용자 입력을 받는 역할이다.

- UIView 클래스를 기반으로 하며 , 개발자가 서브클래싱하여 원하는 모양과 동작을 정의할 수 있다.

 

레이어(Layer):

- 뷰의 기본 렌더링 구성 요소이다. ( 뷰에서 쓸 수 있는 요소라는 뜻 )

- UIView는 레이어에 뷰의 내용을 그리는 방법을 정의하는데 사용된다. ( 종이가 레이어고 , 그 위에 뷰를 그리는 느낌 )

- 레이어는 2D 그래픽 객체로써 , 텍스트 , 이미지 , 그림 및 기타 콘텐츠를 표시한다.

- CALayer( 코어 애니메이션 레이어 ) 클래스를 기반으로 하고 , UIView에 대응되는 CALayer를 가지고 있다.

 

즉 정리하면 , 는 UI를 구성할때 쓰는 오브젝트들이고 , 레이어는 그 뷰 하나하나를 관여해줄 수 있는 요소들이다

( 오브젝트 ) 레이어 ( 요소 )

 

 

prepareForReuse는 iOS의 UITableViewCellUICollectionViewCell 클래스에서 사용되는 메서드로,

재사용 가능한 셀을 초기화하고 다시 사용하기 전에 호출됩니다. 이 메서드는 주로 다음 작업을 수행하는 데 사용된다.

 

1. 셀의 초기화 : 셀이 재사용되기전에, 셀의 상태를 초기화하여 새로운 데이터로 셀을 구성할 수 있도록 준비함

이것은 이전에 표시되던 셀 내의 내용 및 구성요소들을 제거하거나 초기 상태로 되돌리는 작업을 포함한다

2. 선택 상태 초기화 : 셀의 선택 상태를 초기화하며, 선택되지 않은 상태로 설정한다

사용자가 이전에 선택한 셀이 재사용되는 경우, 이 메서드를 사용하여 선택 해제된 상태로 초기화 함

3. 데이터 모델 재설정 : 셀에 연결된 데이터 모델을 재설정한다

이것은 다음에 셀이 표시될 때 올바른 데이터로 구성하기 위한 것 이다.

4. 애니메이션 중지 : 셀이 애니메이션 중인 경우 해당 애니메이션을 중지하고 초기상태로 되돌릴 수 있도록 한다.