UICollectionViewLayoutInvalidationContext

Panther·2021년 8월 23일
0

https://developer.apple.com/documentation/uikit/uicollectionviewlayoutinvalidationcontext

"A context object that declares which parts of your layout need to be updated when the layout is invalidated."

레이아웃이 무효화될 때 레이아웃의 어떤 부분이 업데이트될 필요가 있는지를 선언하는 컨텍스트 객체입니다.

Declaration

@MainActor class UICollectionViewLayoutInvalidationContext : NSObject

Overview

컨텍스트 무효화를 지원하기 위해 디자인된 레이아웃 객체는 무효화 주기 동안 동작을 최적화하기 위해 UICollectionViewLayoutInvalidationContext 객체에 있는 정보를 사용할 수 있습니다. 레이아웃 객체를 무효화하기 위해 precursor로써 무효화 컨텍스트 객체를 생성할 수 있습니다. 무효화 컨텍스트 객체 설정 후, 레이아웃을 효율적으로 업데이트하기 위해 컨텍스트 객체를 사용하는 데 책임이 있는 메소드인 레이아웃 객체의 invalidateLayout(with:) 메소드로 무효화 컨텍스트 객체를 전달해야 합니다. 또한, 컬렉션 뷰는 특정 변경사항에 대한 응답으로 무효화 컨텍스트를 생성할 수도 있습니다. 예를 들어 레이아웃 혹은 데이터 소스 객체를 변경할 때, 아이템을 삽입하거나 삭제할 때, reloadData() 메소드를 호출할 때 무효화 컨텍스트를 생성할 수 있습니다.

Subclassing Notes

커스텀 레이아웃 객체를 생성할 때 UICollectionViewLayoutInvalidationContext를 서브클래싱할 수 있고, 어떤 레이아웃 데이터의 aspect가 무효화될 수 있는지를 구체화하는 속성을 추가할 수 있습니다. 이후 이러한 속성을 확인하기 위해 레이아웃 객체를 디자인해야 하고 레이아웃을 적절하게 업데이트해야 합니다.

레이아웃 객체에서 어떻게 커스텀 무효화 컨텍스트를 지원하는지에 대한 정보는 UICollectionViewLayout을 보시기 바랍니다.

UICollectionViewLayout
https://developer.apple.com/documentation/uikit/uicollectionviewlayout
https://velog.io/@panther222128/UICollectionViewLayout

See Also


Layout Updates

UICollectionViewUpdateItem

컬렉션 뷰에서 아이템에 대한 하나의 변경사항을 설명하는 객체입니다.

https://developer.apple.com/documentation/uikit/uicollectionviewupdateitem
https://velog.io/@panther222128/UICollectionViewUpdateItem

UICollectionViewFocusUpdateContext

컬렉션 뷰에서 포커스 업데이트에 대해 구체적인 정보를 저장하는 컨텍스트 객체입니다.

https://developer.apple.com/documentation/uikit/uicollectionviewfocusupdatecontext
https://velog.io/@panther222128/UICollectionViewFocusUpdateContext


0개의 댓글