TCRangeContent.h 2.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. //
  2. // TCVideoRangeContent.h
  3. // SAVideoRangeSliderExample
  4. //
  5. // Created by annidyfeng on 2017/4/18.
  6. // Copyright © 2017年 Andrei Solovjev. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #import "TCVideoRangeConst.h"
  10. @interface TCRangeContentConfig : NSObject
  11. @property (nonatomic) NSInteger pinWidth;
  12. @property (nonatomic) NSInteger thumbHeight;
  13. @property (nonatomic) NSInteger borderHeight;
  14. @property (nonatomic) UIImage* leftPinImage;
  15. @property (nonatomic) UIImage* rightPigImage;
  16. @property (nonatomic) UIImage* leftCorverImage;
  17. @property (nonatomic) UIImage* rightCoverImage;
  18. @property (nonatomic) UIImage* centerPinImage;
  19. @end
  20. @protocol TCRangeContentDelegate;
  21. @interface TCRangeContent : UIView
  22. @property (nonatomic, weak) id<TCRangeContentDelegate> delegate;
  23. @property (nonatomic) CGFloat leftPinCenterX;
  24. @property (nonatomic) CGFloat rightPinCenterX;
  25. @property (nonatomic) CGFloat centerPinCenterX; //中间滑块位置
  26. @property (nonatomic) UIImageView *leftPin;
  27. @property (nonatomic) UIImageView *rightPin;
  28. @property (nonatomic) UIView *topBorder;
  29. @property (nonatomic) UIView *bottomBorder;
  30. @property (nonatomic) UIImageView *middleLine;
  31. @property (nonatomic) UIImageView *centerCover;
  32. @property (nonatomic) UIImageView *leftCover;
  33. @property (nonatomic) UIImageView *rightCover;
  34. @property (nonatomic) UIImageView *centerPin; //中滑块
  35. @property (nonatomic, copy) NSArray<UIImageView *> *imageViewList;
  36. @property (nonatomic, copy) NSArray *imageList;
  37. @property (nonatomic, readonly) CGFloat pinWidth;
  38. @property (nonatomic, readonly) CGFloat imageWidth;
  39. @property (nonatomic, readonly) CGFloat imageListWidth;
  40. @property (nonatomic, readonly) CGFloat leftScale;
  41. @property (nonatomic, readonly) CGFloat rightScale;
  42. @property (nonatomic, readonly) CGFloat centerScale; //中间拉条的位置比例
  43. - (instancetype)initWithImageList:(NSArray *)images;
  44. - (instancetype)initWithImageList:(NSArray *)images config:(TCRangeContentConfig*)config;
  45. @end
  46. @protocol TCRangeContentDelegate <NSObject>
  47. @optional
  48. - (void)onRangeLeftChangeBegin:(TCRangeContent*)sender;
  49. - (void)onRangeLeftChanged:(TCRangeContent *)sender;
  50. - (void)onRangeLeftChangeEnded:(TCRangeContent *)sender;
  51. - (void)onRangeRightChangeBegin:(TCRangeContent*)sender;
  52. - (void)onRangeRightChanged:(TCRangeContent *)sender;
  53. - (void)onRangeRightChangeEnded:(TCRangeContent *)sender;
  54. - (void)onRangeLeftAndRightChanged:(TCRangeContent *)sender;
  55. - (void)onRangeCenterChangeBegin:(TCRangeContent*)sender;
  56. - (void)onRangeCenterChanged:(TCRangeContent *)sender;
  57. - (void)onRangeCenterChangeEnded:(TCRangeContent *)sender;
  58. @end