PhotoPreviewCell.m 1016 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // PhotoPreviewCell.m
  3. // RA Image
  4. //
  5. // Created by Jack on 2017/6/14.
  6. // Copyright © 2017年 USAI. All rights reserved.
  7. //
  8. #import "PhotoPreviewCell.h"
  9. @implementation PhotoPreviewCell
  10. - (void)setModel:(id<RAPhotoItemDelegate>)model {
  11. if (_model) {
  12. _model.delegate = nil;
  13. }
  14. _model = model;
  15. [_model.delegate unbind];
  16. _model.delegate = self;
  17. [self refreshUI];
  18. }
  19. - (void)setPhoto:(UIImage *)image {
  20. if (self.photoView) {
  21. self.photoView.image = image;
  22. }
  23. }
  24. - (void)prepareForReuse {
  25. [super prepareForReuse];
  26. UIScrollView *sc = self.scrollView;
  27. sc.zoomScale = 1;
  28. sc.contentSize = CGSizeZero;
  29. sc.contentOffset = CGPointZero;
  30. }
  31. - (void)layoutSubviews {
  32. [super layoutSubviews];
  33. }
  34. #pragma mark - UIDelegate
  35. - (void)refreshUI {
  36. dispatch_async(dispatch_get_main_queue(), ^{
  37. [self setPhoto:self.model.image];
  38. });
  39. }
  40. - (void)unbind {
  41. _model.delegate = nil;
  42. _model = nil;
  43. [self refreshUI];
  44. }
  45. @end