HDMultipleScrollListView.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // HDMultipleScrollListView.h
  3. // HDCollectionView_Example
  4. //
  5. // Created by HaoDong chen on 2019/5/20.
  6. // Copyright © 2019 donggelaile. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "HDCollectionView.h"
  10. #import <JXCategoryView/JXCategoryView.h>
  11. static NSInteger HDMainDefaultTopEdge = 444;
  12. NS_ASSUME_NONNULL_BEGIN
  13. @class HDMultipleScrollListView;
  14. @protocol HDMultipleScrollListViewScrollViewDidScroll <NSObject>
  15. @required
  16. - (void)HDMultipleScrollListViewScrollViewDidScroll:(void(^)(UIScrollView*))ScrollCallback;
  17. @end
  18. #pragma mark - HDMultipleScrollListViewTitleHeader
  19. @interface HDMultipleScrollListViewTitleHeader:HDSectionView
  20. @property (nonatomic, weak) HDMultipleScrollListView *rootView;
  21. @end
  22. @interface HDMultipleScrollListConfiger : NSObject
  23. @property (nonatomic, strong, nullable) NSMutableArray <HDSectionModel*> *topSecArr;
  24. @property (nonatomic, strong) NSMutableArray <UIViewController<HDMultipleScrollListViewScrollViewDidScroll> *> *controllers;
  25. @property (nonatomic, strong) NSMutableArray <NSString*> *titles;
  26. @property (nonatomic, assign) CGSize titleContentSize;//标题滑动列表的大小
  27. @property (nonatomic, assign) CGFloat listHeight;//列表高度
  28. @property (nonatomic, assign) BOOL isHeaderNeedStop;
  29. @property (nonatomic, copy) NSString *diyHeaderClsStr;//需要自定义header时设置该参数,必须继承自 HDMultipleScrollListViewTitleHeader
  30. @property (nonatomic, strong, nullable) NSMutableArray <HDSectionModel*> *subSecArr;
  31. @property (nonatomic, strong, nullable) NSMutableArray <HDSectionModel*> *bottomSecArr;
  32. @end
  33. @interface HDMultipleScrollListView : UIView
  34. @property (nonatomic, strong, readonly) HDMultipleScrollListConfiger *confingers;
  35. @property (nonatomic, strong, readonly) JXCategoryTitleView *jxTitle;
  36. @property (nonatomic, strong, readonly) JXCategoryIndicatorLineView *jxLineView;
  37. @property (nonatomic, strong, readonly) HDCollectionView *mainCollecitonV;
  38. - (void)configWithConfiger:(void(^)(HDMultipleScrollListConfiger*configer))config;
  39. - (void)configFinishCallback:(void(^)(HDMultipleScrollListConfiger*configer))configFinish;
  40. @end
  41. NS_ASSUME_NONNULL_END