iOS开发之可双向调节的Slider滑块

时间:2022-11-28 16:57:02


滑块在很多地方都有使用,所以这里向大家展示一个自定义的可双向控制的Slider,并且可以通过代理方法获取相应的范围值,部分代码如下:

属性值:

/**
 设置最小值
 */
@property (nonatomic,assign)CGFloat minNum;

/**
 设置最大值
 */
@property (nonatomic,assign)CGFloat maxNum;

/**
 设置min 颜色
 */
@property (nonatomic,weak)UIColor *minTintColor;

/**
 设置max 颜色
 */
@property (nonatomic,weak)UIColor *maxTintColor;

/**
 设置 中间 颜色
 */
@property (nonatomic,weak)UIColor *mainTintColor;

/**
 显示较小的数Label
 */
@property (nonatomic,strong)UILabel *minLabel;

/**
 显示较大的数Label
 */
@property (nonatomic,strong)UILabel *maxLabel;

/**
 当前最小值
 */
@property (nonatomic,assign)CGFloat  currentMinValue;

/**
 当前最大值
 */
@property (nonatomic,assign)CGFloat  currentMaxValue;

/**
 显示 min 滑块
 */
@property (nonatomic,strong)UIButton *minSlider;

/**
 显示 max 滑块
 */
@property (nonatomic,strong)UIButton *maxSlider;

/**
 设置单位
 */
@property (nonatomic,copy)NSString * unit;

根据这些可以显示想要的颜色样式,

使用方式:

_slider = [[JLDoubleSlider alloc]initWithFrame:CGRectMake(0, 0, 300, 40)];
    _slider.unit = @"¥";
    _slider.minNum = 14;
    _slider.maxNum = 59;
    _slider.minTintColor = [UIColor redColor];
    _slider.maxTintColor = [UIColor blueColor];
    _slider.mainTintColor = [UIColor blackColor];
    
    [self.view addSubview:_slider];

界面效果:

iOS开发之可双向调节的Slider滑块

源码下载:​https://github.com/hbblzjy/JLDoubleSliderDemo