// // HDLArcSeekbar.h // HDL-ArcSeekbar // // Created by HDL on 2019/7/19. // Copyright © 2019 JLChen. All rights reserved. // #import #define APP_DEFAULT_BG [UIColor colorWithRed:72/255.0f green:72/255.0f blue:73/255.0f alpha:1.0f] typedef enum { HDL_THUMB_FILL, HDL_THUMB_STROKE, }HDLThumbMode; @protocol HDLArcSeekbarProgressChangedDelegate //手指按下,开始点击 -(void)onStartTrackingTouch; //滑动导致的进度值发生改变 -(void)onProgressChanged:(int)mProgress; //停止滑动或结束点击,导致的进度值发生改变 -(void)onStopTrackingTouch:(int)mProgress; @end @interface HDLArcSeekbar : UIControl /** 是否可以点击 */ @property (nonatomic, assign) BOOL isClickable; ///** // 进度条颜色 // */ //@property (nonatomic, strong) UIColor* mArcProgressBarColor; /** 背景颜色 */ @property (nonatomic, strong) UIColor* mArcBackBarColor; /** 拖动按钮颜色 */ @property (nonatomic, strong) UIColor* mThumbColor; /** 当前值 */ @property (nonatomic, assign) float mProgressCurrentValue; /** 圆弧宽度 */ @property (nonatomic, assign) float mArcWidth; /** 拖动按钮宽度 */ @property (nonatomic, assign) float mThumbWidth; /** Thumb 拖动按钮风格 */ @property (nonatomic, assign) HDLThumbMode mThumbMode; /** 显示进度文字颜色 */ @property (nonatomic, strong) UIColor* mProgressTextColor; /** 显示进度文字大小 */ @property (nonatomic, assign) int mProgressTextSize; /** 进度显示文字坐标与进度圆弧的距离 */ @property (nonatomic, assign) int mTextDefaultDistance; #pragma mark HDLArcSeekbarProgressChangedDelegate /** 进度值改变代理事件 */ @property (nonatomic,weak) id mProgressChangedDelegate; #pragma mark 对外接口方法 /** 设置进度值 @param mProgress 进度值 */ -(void)setProgress:(int)mProgress; /** 设置开口角度 @param mOpenAngle 开口角度 */ -(void)setOpenAngle:(float)mOpenAngle; /** 设置进度显示值单位 @param mString 单位字符 */ -(void)setProgressBarUnitSring:(NSString *)mString; ///** // *设置是否可以点击 // */ //-(void)setIsClickable:(BOOL)isClickable; /** 设置最大值最小值 @param mMinValue 最小值 @param mMaxValue 最大值 */ -(void)setMinAndMaxValue:(float)mMinValue mMaxValue:(float)mMaxValue; /** 重置布局 @param mCGRect 布局 */ -(void)initWithFrameArc:(CGRect) mCGRect; ///** // 设置渐变效果 颜色数组 // // @param mColors 颜色数组 // */ //-(void)setProgressBarColors:(NSArray *)mColors; /** 设置渐变效果 @param startColor 开始颜色 @param endColor 结束颜色 */ -(void)setProgressBarColors:(UIColor *)startColor endColor:(UIColor*)endColor; /** 设置进度条颜色 @param oneColor 单一颜色 */ -(void)setProgressBarColor:(UIColor *)oneColor; @end //*****V1.0.3***** //# HDLArcSeekbar(圆弧拖动条) //- [x] 增加onStartTrackingTouch 开始点击事件; //*****V1.0.2***** //# HDLArcSeekbar(圆弧拖动条) //- [x] 增加拖动按钮宽度自定义; //- [x] 优化进度显示文本位置,实现文本居中; //- [x] 修改算法,优化拖动按钮自定义宽度而不影响位置; //- [x] 增加渐变效果; //*****V1.0.1***** //# HDLArcSeekbar(圆弧拖动条) //- [x] 支持进度度状态显示值,和自定义显示单位 //- [x] 支持进度显示条 //- [x] 增加禁止点击接口 //