滑块(UISlider)是常用的界面组件,能够让用户用可视化方式设置指定范围内的值。UISlider常用属性如下:
- minimumValue属性:设置滑块的最小值
- maximumValue属性:设置滑块的最大值
- UIImage属性:为滑块设置表示放大和缩小的图像素材
UISlider使用步骤如下:
1.创建
滑块是一个标准的UIControl,可以通过代码来创建它
mySlider = [[UISlider alloc] initWithFrame:CGRectMake(50, 200, 200, 30)];
2.设定范围与默认值
mySlider.minimumValue = 0;//下限
mySlider.maximumValue = 100;//上限
mySlider.value = 20;//设定默认值
3.两端添加图片
[mySlider setMinimumTrackImage:[UIImage imageNamed:@"min.png"] forState:UIControlStateNormal];
[mySlider setMaximumTrackImage:[UIImage imageNamed:@"max.png"] forState:UIControlStateNormal];
4.显示控件
[self.view addSubview:mySlider];
5.读取控件值**
float value = mySlider.value;
6.通知
要想在滑块值改变时收到通知,可以用UIControl类的addTarget方法为UIControlEventValueChanged添加一个动作:
[mySlider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
只要滑块滑到新的位置,动作方法就会被调用:
- (void)sliderValueChanged:(id)sender{
UISlider *control = (UISlider *)sender;
if (control == mySlider) {
float value = control.value;
//添加自己处理的代码
}
}
如果拖动中也触发,可以设置continuos属性:
mySlider.continuous = YES;