如何在iOS中以编程方式创建范围滑块?

M S*_*nil 13 rangeslider ios

我想创建一个范围滑块.但是,我在同一位置分配2个滑块,然后只有1个正在工作.我找到了一些外部API来创建Slider.有没有办法在iOS中以编程方式创建Range滑块.

这是我的代码..

  CGRect frame = CGRectMake(20, 330, 300, 60);

slider1 = [[UISlider alloc] initWithFrame:frame];
[slider1 addTarget:self action:@selector(sliderActionMin:) forControlEvents:UIControlEventValueChanged];
[slider1 setBackgroundColor:[UIColor clearColor]];
slider1.minimumValue = 0.0;
slider1.maximumValue = 55.0;
slider1.continuous = YES;
slider1.value= 16
slider1.contentMode=UIViewContentModeScaleToFill;
[self.view addSubview:slider1];


slider2 = [[UISlider alloc] initWithFrame:frame];
[slider2 addTarget:self action:@selector(sliderActionMin:) forControlEvents:UIControlEventValueChanged];
[slider2 setBackgroundColor:[UIColor clearColor]];
slider2.minimumValue = 0.0;
slider2.maximumValue = 55.0;
slider2.continuous = YES;
slider2.contentMode=UIViewContentModeScaleToFill;
slider2.value=[SingletonClass sharedSingleton].minAge;
[self.view addSubview:slider2];
Run Code Online (Sandbox Code Playgroud)

Rah*_*tel 29

您正在另一个滑块上方添加一个滑块.因此,根据Cocoa-Touch标准,Only Top(新添加的)滑块将检测所有事件.当您在相同的帧值上添加两个滑块时,第一个滑块将是不可触摸的.

有很多适用于iOS的Range Slider示例.以下是一些可能对您有帮助的例子

  • MARKRangeSlider 真的很棒而且很直观,我已经浪费了半天时间来研究 NMRangeSlider (2认同)