IOS-UISlider的详细使用

UISlider 是一个方便的控件,让用户可以更加方便的去设定一定范围之内的值,其实和按钮Button一样,Slider也有相应地响应事件。

如果想拖动Slider去影响程序里的某个值的话,只要去触动它对应的响应事件就oK了,不一样的是 Button的触发方式是 Touchupinsides ;而Slider得触发方式是 change;

- (void)viewDidLoad
{
    [super viewDidLoad];
    self.view.backgroundColor = [UIColor whiteColor];
    self.mySlider = [[UISlider alloc] initWithFrame:CGRectMake(0.0f, 0.0f,200.0f,23.0f)];
    [self.mySlider setCenter:self.view.center];
    // 设置滑动值的范围
    [self.mySlider setMinimumValue: 0.0f];
    [self.mySlider setMaximumValue:100.0f];
    // 设置滑动条的监听事件
    [self.mySlider addTarget:self
                     action:@selector(sliderValueChanged:)
           forControlEvents:UIControlEventValueChanged];
    
    // 可能有时候你只想在用户手指放开 thumb 而且新 的值以及设置好以后得到通知。
    [self.mySlider setContinuous:NO];
    
    // 设置Thumb(滑动块)的图片
    [self.mySlider setThumbImage:[UIImage imageNamed:@"image_name"] forState:UIControlStateNormal];
    [self.mySlider setThumbImage:[UIImage imageNamed:@"image_name"] forState:UIControlStateHighlighted];
    
    [self.mySlider setValue:self.mySlider.maximumValue / 2.0];// 设置滑动值
    [self.view addSubview:self.mySlider];
   

}

#pragma mark- 设置滑动条的监听事件

// 当滑动条值改变时,执行该方法
- (void) sliderValueChanged:(UISlider *)paramSender{
    if ([paramSender isEqual:self.mySlider]){
        NSLog(@"New value = %f", paramSender.value);
    }
}

当然,UISlider还有很多属性可以自定义设置。

其实,大体的用法都差不多,一般的话,音量和进度条用到的机会会比较多个人感觉。

你可能感兴趣的:(ios,进度条,UISlider,Changed,音量控制)