IGListBatchUpdateData
Objective-C
@interface IGListBatchUpdateData : NSObject
Swift
class ListBatchUpdateData : NSObject
An instance of IGListBatchUpdateData
takes section indexes and item index paths
and performs cleanup on init in order to perform a crash-free
update via -[UICollectionView performBatchUpdates:completion:]
.
-
Section insert indexes.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSIndexSet *_Nonnull insertSections;
Swift
var insertSections: IndexSet { get }
-
Section delete indexes.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSIndexSet *_Nonnull deleteSections;
Swift
var deleteSections: IndexSet { get }
-
Section moves.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSSet<IGListMoveIndex *> *_Nonnull moveSections;
Swift
var moveSections: Set<ListMoveIndex> { get }
-
Item insert index paths.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSIndexPath *> *_Nonnull insertIndexPaths;
Swift
var insertIndexPaths: [IndexPath] { get }
-
Item delete index paths.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSIndexPath *> *_Nonnull deleteIndexPaths;
Swift
var deleteIndexPaths: [IndexPath] { get }
-
Item update index paths.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<NSIndexPath *> *_Nonnull updateIndexPaths;
Swift
var updateIndexPaths: [IndexPath] { get }
-
Item moves.
Declaration
Objective-C
@property (nonatomic, strong, readonly) NSArray<IGListMoveIndexPath *> *_Nonnull moveIndexPaths;
Swift
var moveIndexPaths: [ListMoveIndexPath] { get }
-
-initWithInsertSections:
deleteSections: moveSections: insertIndexPaths: deleteIndexPaths: updateIndexPaths: moveIndexPaths: Creates a new batch update object with section and item operations.
Declaration
Objective-C
- (nonnull instancetype) initWithInsertSections:(nonnull NSIndexSet *)insertSections deleteSections:(nonnull NSIndexSet *)deleteSections moveSections:(nonnull NSSet<IGListMoveIndex *> *)moveSections insertIndexPaths:(nonnull NSArray<NSIndexPath *> *)insertIndexPaths deleteIndexPaths:(nonnull NSArray<NSIndexPath *> *)deleteIndexPaths updateIndexPaths:(nonnull NSArray<NSIndexPath *> *)updateIndexPaths moveIndexPaths: (nonnull NSArray<IGListMoveIndexPath *> *)moveIndexPaths;
Swift
init(insertSections: IndexSet, deleteSections: IndexSet, moveSections: Set<ListMoveIndex>, insert insertIndexPaths: [IndexPath], delete deleteIndexPaths: [IndexPath], update updateIndexPaths: [IndexPath], moveIndexPaths: [ListMoveIndexPath])
Parameters
insertSections
Section indexes to insert.
deleteSections
Section indexes to delete.
moveSections
Section moves.
insertIndexPaths
Item index paths to insert.
deleteIndexPaths
Item index paths to delete.
updateIndexPaths
Item index paths to update.
moveIndexPaths
Item index paths to move.
Return Value
A new batch update object.