RangePickerCell.m 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // RangePickerCell.m
  3. // FSCalendar
  4. //
  5. // Created by dingwenchao on 02/11/2016.
  6. // Copyright © 2016 Wenchao Ding. All rights reserved.
  7. //
  8. #import "RangePickerCell.h"
  9. #import "FSCalendarExtensions.h"
  10. @implementation RangePickerCell
  11. - (instancetype)initWithFrame:(CGRect)frame
  12. {
  13. self = [super initWithFrame:frame];
  14. if (self) {
  15. CALayer *selectionLayer = [[CALayer alloc] init];
  16. selectionLayer.backgroundColor = [UIColor orangeColor].CGColor;
  17. selectionLayer.actions = @{@"hidden":[NSNull null]}; // Remove hiding animation
  18. [self.contentView.layer insertSublayer:selectionLayer below:self.titleLabel.layer];
  19. self.selectionLayer = selectionLayer;
  20. CALayer *middleLayer = [[CALayer alloc] init];
  21. middleLayer.backgroundColor = [[UIColor orangeColor] colorWithAlphaComponent:0.3].CGColor;
  22. middleLayer.actions = @{@"hidden":[NSNull null]}; // Remove hiding animation
  23. [self.contentView.layer insertSublayer:middleLayer below:self.titleLabel.layer];
  24. self.middleLayer = middleLayer;
  25. // Hide the default selection layer
  26. self.shapeLayer.hidden = YES;
  27. }
  28. return self;
  29. }
  30. - (void)layoutSubviews
  31. {
  32. [super layoutSubviews];
  33. self.titleLabel.frame = self.contentView.bounds;
  34. }
  35. - (void)layoutSublayersOfLayer:(CALayer *)layer
  36. {
  37. [super layoutSublayersOfLayer:layer];
  38. self.selectionLayer.frame = self.contentView.bounds;
  39. self.middleLayer.frame = self.contentView.bounds;
  40. }
  41. @end