Protocols
The following protocols are available globally.
-
The
See moreIGListDiffable
protocol provides methods needed to compare the identity and equality of two objects.Declaration
Objective-C
@protocol IGListDiffable
Swift
protocol ListDiffable
-
Implement this protocol to provide data to an
See moreIGListAdapter
.Declaration
Objective-C
@protocol IGListAdapterDataSource <NSObject>
Swift
@MainActor protocol ListAdapterDataSource : NSObjectProtocol
-
Conform to
See moreIGListAdapterDelegate
to receive display events for objects in a list.Declaration
Objective-C
@protocol IGListAdapterDelegate <NSObject>
Swift
protocol ListAdapterDelegate : NSObjectProtocol
-
Conform to
See moreIGListAdapterMoveDelegate
to receive interactive reordering requests.Declaration
Objective-C
@protocol IGListAdapterMoveDelegate <NSObject>
Swift
protocol ListAdapterMoveDelegate : NSObjectProtocol
-
See moreIGListAdapterPerformanceDelegate
can be used to measure cell dequeue, display, size, and scroll callbacks.Declaration
Objective-C
@protocol IGListAdapterPerformanceDelegate <NSObject>
Swift
protocol ListAdapterPerformanceDelegate : NSObjectProtocol
-
Conform to this protocol to receive events about
See moreIGListAdapter
updates.Declaration
Objective-C
@protocol IGListAdapterUpdateListener <NSObject>
Swift
protocol ListAdapterUpdateListener : NSObjectProtocol
-
A protocol that receives events about
See moreIGListAdapterUpdater
operations.Declaration
Objective-C
@protocol IGListAdapterUpdaterDelegate <NSObject>
Swift
protocol ListAdapterUpdaterDelegate : NSObjectProtocol
-
Objects conforming to the IGListBatchContext protocol provide a way for section controllers to mutate their cells or reload everything within the section.
See moreDeclaration
Objective-C
@protocol IGListBatchContext <NSObject>
Swift
protocol ListBatchContext : NSObjectProtocol
-
A protocol for cells that configure themselves given a view model.
See moreDeclaration
Objective-C
@protocol IGListBindable <NSObject>
Swift
protocol ListBindable : NSObjectProtocol
-
A protocol that returns data to power cells in an
See moreIGListBindingSectionController
.Declaration
Objective-C
@protocol IGListBindingSectionControllerDataSource <NSObject>
Swift
protocol ListBindingSectionControllerDataSource : NSObjectProtocol
-
A protocol that handles cell selection events in an
See moreIGListBindingSectionController
.Declaration
Objective-C
@protocol IGListBindingSectionControllerSelectionDelegate <NSObject>
Swift
protocol ListBindingSectionControllerSelectionDelegate : NSObjectProtocol
-
The collection context provides limited access to the collection-related information that section controllers need for operations like sizing, dequeuing cells, inserting, deleting, reloading, etc.
See moreDeclaration
Objective-C
@protocol IGListCollectionContext <NSObject>
Swift
protocol ListCollectionContext : NSObjectProtocol
-
Conform to
See moreIGListCollectionViewDelegateLayout
to provide customized layout information for a collection view.Declaration
Objective-C
@protocol IGListCollectionViewDelegateLayout <UICollectionViewDelegateFlowLayout>
Swift
protocol IGListCollectionViewDelegateLayout : UICollectionViewDelegateFlowLayout
-
A protocol for layouts that defines interaction with an IGListCollectionView, for recieving updated section indexes.
See moreDeclaration
Objective-C
@protocol IGListCollectionViewLayoutCompatible <NSObject>
Swift
protocol ListCollectionViewLayoutCompatible : NSObjectProtocol
-
Implement this protocol to receive display events for a section controller when it is on screen.
See moreDeclaration
Objective-C
@protocol IGListDisplayDelegate <NSObject>
Swift
protocol ListDisplayDelegate : NSObjectProtocol
-
Implement this protocol to receive display events for a section controller when it is on screen.
See moreDeclaration
Objective-C
@protocol IGListScrollDelegate <NSObject>
Swift
protocol ListScrollDelegate : NSObjectProtocol
-
A delegate that can receive selection events on an
See moreIGListSingleSectionController
.Declaration
Objective-C
@protocol IGListSingleSectionControllerDelegate <NSObject>
Swift
@MainActor protocol ListSingleSectionControllerDelegate : NSObjectProtocol
-
Conform to this protocol to provide information about a list’s supplementary views. This data is used in
See moreIGListAdapter
which then configures and maintains aUICollectionView
. The supplementary API reflects that inUICollectionView
,UICollectionViewLayout
, andUICollectionViewDataSource
.Declaration
Objective-C
@protocol IGListSupplementaryViewSource <NSObject>
Swift
protocol ListSupplementaryViewSource : NSObjectProtocol
-
Conform to
See moreIGListTransitionDelegate
to provide customized layout information for a collection view.Declaration
Objective-C
@protocol IGListTransitionDelegate <NSObject>
Swift
protocol IGListTransitionDelegate
-
Implement this protocol in order to handle both section and row based update events. Implementation should forward or coalesce these events to a backing store or collection.
See moreDeclaration
Objective-C
@protocol IGListUpdatingDelegate <NSObject>
Swift
protocol ListUpdatingDelegate : NSObjectProtocol
-
Implement this protocol to receive working range events for a list.
The working range is a range near the viewport in which you can begin preparing content for display. For example, you could begin decoding images, or warming text caches.
See moreDeclaration
Objective-C
@protocol IGListWorkingRangeDelegate <NSObject>
Swift
protocol ListWorkingRangeDelegate : NSObjectProtocol