1.HDCollectionView 初始化 (配置的参数优先级高于默认值)
1 2 3 4
| /** HDCollectionView 初始化 (配置的参数优先级高于默认值) */ + (__kindof HDCollectionView*)hd_makeHDCollectionView:(void(^ _Nullable)(HDCollectionViewMaker*maker))maker;
|
2.刷新colletionView
1 2 3 4
| /** 刷新colletionView */ - (void)hd_reloadData;
|
3.一次性初始化所有数据 (完成后会回调 dataChangeFinishedCallBack)
1 2 3 4
| /** 一次性初始化所有数据 (完成后会回调 dataChangeFinishedCallBack) */ - (void)hd_setAllDataArr:(NSArray<id<HDSectionModelProtocol>>* _Nullable)dataArr;
|
4.包含所有数据改变相关方法完成后的回调(即setAll/append/delete/change相关的函数完成后都会在此回调)
1 2 3 4
| /** 包含所有数据改变相关方法完成后的回调(即setAll/append/delete/change相关的函数完成后都会在此回调) */ - (void)hd_dataChangeFinishedCallBack:(void(^)(HDDataChangeType changeType))finishCallback;
|
5.直接添加一个新的secModel (完成后会回调 dataChangeFinishedCallBack)
1 2 3 4
| /** 直接添加一个新的secModel (完成后会回调 dataChangeFinishedCallBack) */ - (void)hd_appendDataWithSecModel:(id<HDSectionModelProtocol>)secModel animated:(BOOL)animated;
|
6.插入一个secModel到指定位置
index <= 0 插入到首段
index >= allDataArr.count 添加到最后一段
0 < index < allDataArr.count 插入到index段的前面
1 2 3 4 5 6 7
| /** 插入一个secModel到指定位置 index <= 0 插入到首段 index >= allDataArr.count 添加到最后一段 0 < index < allDataArr.count 插入到index段的前面 */ - (void)hd_insertDataWithSecModel:(id<HDSectionModelProtocol>)secModel atIndex:(NSInteger)index animated:(BOOL)animated;
|
7.向某个段内增加cell/默认的sectionKey是第几段
该方法目前对于瀑布流元素的增加,内部计算是增量计算的。但对于HDYogaFlowLayout会对该段整体重新计算
如果想增量计算HDYogaFlowLayout,使用hd_appendDataWithSecModel,新增一个新的段。
1 2 3 4 5 6 7
| /** 向某个段内增加cell/默认的sectionKey是第几段 该方法目前对于瀑布流元素的增加,内部计算是增量计算的。但对于HDYogaFlowLayout会对该段整体重新计算 如果想增量计算HDYogaFlowLayout,使用hd_appendDataWithSecModel,新增一个新的段。 */ - (void)hd_appendDataWithCellModelArr:(NSArray<id<HDCellModelProtocol>>*)itemArr sectionKey:(NSString*)sectionKey animated:(BOOL)animated animationFinishCallback:(void(^ _Nullable)(void))animationFinish; - (void)hd_appendDataWithCellModelArr:(NSArray<id<HDCellModelProtocol>>*)itemArr sectionKey:(NSString*)sectionKey animated:(BOOL)animated;
|
8.如果仅仅是向secModel新增cellModel,使用 hd_appendDataWithCellModelArr方法
该方法改变已有的某个section内的数据,比如对sectionDataArr增删
如果设置了SectionModel的sectionKey,则可以通过sectionKey来获取secModel。默认的sectionKey是当前段数
想要刷新一个或几个cell的UI时,调用此方法
1 2 3 4 5 6 7 8 9
| /** 如果仅仅是向secModel新增cellModel,使用 hd_appendDataWithCellModelArr方法 该方法改变已有的某个section内的数据,比如对sectionDataArr增删 如果设置了SectionModel的sectionKey,则可以通过sectionKey来获取secModel。默认的sectionKey是当前段数 想要刷新一个或几个cell的UI时,调用此方法 */ - (void)hd_changeSectionModelWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated changingIn:(void(^)(id<HDSectionModelProtocol> secModel))changeBlock animationFinishCallback:(void(^ _Nullable)(void))animationFinish; - (void)hd_changeSectionModelWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated changingIn:(void(^)(id<HDSectionModelProtocol> secModel))changeBlock;
|
9.删除某段的所有内容
1 2 3 4 5
| /** 删除某段的所有内容 */ - (void)hd_deleteSectionWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated animationFinishCallback:(void(^ _Nullable)(void))animationFinish; - (void)hd_deleteSectionWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated;
|
10.某个key的sectionModel是否存在
1 2 3 4
| /** 某个key的sectionModel是否存在 */ - (BOOL)hd_sectionModelExist:(NSString*)sectionKey;
|
11.删除某段的所有内容
1 2 3 4 5
| /** 删除某段的所有内容 */ - (void)hd_deleteSectionWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated animationFinishCallback:(void(^ _Nullable)(void))animationFinish; - (void)hd_deleteSectionWithKey:(nullable NSString*)sectionKey animated:(BOOL)animated;
|