您的位置:首页 > 产品设计 > UI/UE

iOS开发之滑块UISlider

2017-11-23 14:16 791 查看
UISlider是OC中很简单的一个模块,不过想要加粗或者竖直显示时需要花点功夫罢了.
简单的滑动条

```

// 初始化
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(100, 200, 100, 20)];
// 添加到俯视图
[self.view addSubview:slider];


```

接下来可以设置它的一些属性了

```

// 设置最小值
slider.minimumValue = 9;
// 设置最大值
slider.maximumValue = 11;
// 设置初始值
slider.value = (slider.minimumValue + slider.maximumValue) / 2;
// 设置可连续变化
slider.continuous = YES;
//滑轮左边颜色,如果设置了左边的图片就不会显示
slider.minimumTrackTintColor = [UIColor greenColor];
//滑轮右边颜色,如果设置了右边的图片就不会显示
slider.maximumTrackTintColor = [UIColor redColor];

/// 也可设置为图片
///[slider setMinimumTrackImage:[UIImageimageNamed:@"max.png"] forState:UIControlStateNormal];
//[slider setMaximumTrackImage:[UIImageimageNamed:@"min.png"] forState:UIControlStateNormal];

//设置了滑轮的颜色,如果设置了滑轮的样式图片就不会显示  slider.thumbTintColor = [UIColor redColor];
// 针对值变化添加响应方法
[slider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];


```

如果你想竖直来放,只需要旋转90度就好,slider本身只是水平放置,无竖直显示特性

```

slider.transform = CGAffineTransformMakeRotation(1.57079633);


```

如果你想加粗滑动条,那么就要重写一个继承与UISlider的类了,然后重写里面的实现方法来控制:

```

/// 设置最小值
- (CGRect)minimumValueImageRectForBounds:(CGRect)bounds;
/// 设置最大值
- (CGRect)maximumValueImageRectForBounds:(CGRect)bounds;
/// 控制slider的宽高
- (CGRect)trackRectForBounds:(CGRect)bounds;
/// 改变滑块的触摸范围
- (CGRect)thumbRectForBounds:(CGRect)bounds trackRect:(CGRect)rect value:(float)value;

根据需要实现即可, 不必全部实现
```
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ios UISlider