ShowPhotoesViewModel.m 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. //
  2. // ShowPhotoesViewModel.m
  3. // LN_School
  4. //
  5. // Created by 张嵘 on 2019/7/28.
  6. // Copyright © 2019 Danson. All rights reserved.
  7. //
  8. #import "ShowPhotoesViewModel.h"
  9. #import "ShowPhotoesModel.h"
  10. @implementation ShowPhotoesViewModel
  11. - (void)loadData:(void (^)(BOOL, id _Nonnull))calback {
  12. //发起网络请求、处理后返回(这里省略)
  13. NSMutableArray *sectionArr = @[[self makeSecModel]].mutableCopy;
  14. //如果没有对callback强引用,外部可以不用weakSelf
  15. if (calback) {
  16. calback(YES,sectionArr);
  17. }
  18. }
  19. - (HDSectionModel*)makeSecModel {
  20. //该段cell数据源
  21. NSMutableArray *cellModelArr = @[].mutableCopy;
  22. NSInteger cellCount = 10;
  23. for (int i =0; i < cellCount; i++) {
  24. HDCellModel *model = [HDCellModel new];
  25. ShowPhotoesModel *showPhotoesModel = [ShowPhotoesModel new];
  26. showPhotoesModel.url = @"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=17825117,2252669969&fm=26&gp=0.jpg";
  27. showPhotoesModel.name = @"抓拍照片";
  28. model.orgData = showPhotoesModel;
  29. model.cellSize = CGSizeMake((kScreenWidth - 30) / 2.f, (3 * (kScreenWidth - 30)) / 5.f);
  30. model.cellClassStr = @"ShowPhotoesCell";
  31. [cellModelArr addObject:model];
  32. }
  33. //该段layout
  34. HDYogaFlowLayout *layout = [HDYogaFlowLayout new];//isUseSystemFlowLayout为YES时只支持HDBaseLayout
  35. layout.secInset = UIEdgeInsetsMake(10, 10, 10, 10);
  36. layout.justify = YGJustifyCenter;
  37. layout.verticalGap = 10;
  38. layout.horizontalGap = 10;
  39. //该段的所有数据封装
  40. HDSectionModel *secModel = [HDSectionModel new];
  41. secModel.headerTopStopType = HDHeaderStopOnTopTypeNormal;
  42. secModel.isNeedAutoCountCellHW = NO;
  43. secModel.sectionDataArr = cellModelArr;
  44. secModel.layout = layout;
  45. return secModel;
  46. }
  47. @end