HomePageADHeaderView.m 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //
  2. // HomePageADHeaderView.m
  3. // LN_School
  4. //
  5. // Created by 张嵘 on 2019/7/9.
  6. // Copyright © 2019 Danson. All rights reserved.
  7. //
  8. #import "HomePageADHeaderView.h"
  9. #import "HomePageADCustomCell.h"
  10. @interface HomePageADHeaderView () <SDCycleScrollViewDelegate>
  11. @end
  12. @implementation HomePageADHeaderView
  13. #pragma mark - Life Cycle
  14. - (instancetype)initWithFrame:(CGRect)frame {
  15. self = [super initWithFrame:frame];
  16. if (self) {
  17. self.backgroundColor = UIColor.whiteColor;
  18. [self addSubview:self.cycleScrollView];
  19. }
  20. return self;
  21. }
  22. - (void)layoutSubviews {
  23. [super layoutSubviews];
  24. [_cycleScrollView mas_makeConstraints:^(MASConstraintMaker *make) {
  25. make.center.mas_equalTo(self);
  26. make.size.mas_equalTo(CGSizeMake(self.bounds.size.width, self.bounds.size.height));
  27. }];
  28. }
  29. #pragma mark -
  30. - (Class)customCollectionViewCellClassForCycleScrollView:(SDCycleScrollView *)view {
  31. return [HomePageADCustomCell class];
  32. }
  33. - (void)setupCustomCell:(HomePageADCustomCell *)cell forIndex:(NSInteger)index cycleScrollView:(SDCycleScrollView *)view {
  34. if (view.imageURLStringsGroup && view.imageURLStringsGroup.count > 0) {
  35. [cell.imageView sd_setImageWithURL:view.imageURLStringsGroup[index] placeholderImage:view.placeholderImage];
  36. } else if (view.localizationImageNamesGroup && view.localizationImageNamesGroup.count > 0) {
  37. cell.imageView.image = [UIImage imageNamed:view.localizationImageNamesGroup[index]];
  38. }
  39. }
  40. #pragma mark - Lazy Load
  41. - (SDCycleScrollView *)cycleScrollView {
  42. if (!_cycleScrollView) {
  43. _cycleScrollView = [SDCycleScrollView cycleScrollViewWithFrame:self.frame shouldInfiniteLoop:YES imageNamesGroup:@[@"defaultImg",@"defaultImg"]];
  44. _cycleScrollView.layer.cornerRadius = 5;
  45. _cycleScrollView.clipsToBounds = YES;
  46. _cycleScrollView.delegate = self;
  47. _cycleScrollView.autoScrollTimeInterval = 5;
  48. _cycleScrollView.imageURLStringsGroup = @[@"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=17825117,2252669969&fm=26&gp=0.jpg",@"https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=17825117,2252669969&fm=26&gp=0.jpg"];
  49. _cycleScrollView.placeholderImage = [UIImage imageNamed:@"defaultImg"];
  50. _cycleScrollView.pageControlBottomOffset = 10 + _cycleScrollView.pageControlBottomOffset;
  51. }
  52. return _cycleScrollView;
  53. }
  54. @end