swift的UISlider的用法和oc基本没有区别
1、创建
class SecondViewController: UIViewController { var slider = UISlider()//初始化
2、左边和初始化值的设置
slider.frame = CGRect(x:10, y:240, width:self.view.bounds.size.width - 20, height:150) slider.minimumValue = 0 //最小值 slider.maximumValue = 1 //最大值 slider.value = 0.5 //默认值 self.view.addSubview(slider)
3,设置滑块的值,同时有动画
slider.setValue(0.8,animated:true)
4,滑块值改变响应
slider.isContinuous = false//滑块滑动停止后才触发ValueChanged事件 slider.addTarget(self, action: #selector(sliderChanged(seliderValue:)), for: .valueChanged)
对应方法的实现
func sliderDidchange(seliderValue:UISlider) {
print(slider.value)
}
5,滑块左右两边槽的颜色
slider.minimumTrackTintColor=UIColor.red //左边槽的颜色 slider.maximumTrackTintColor=UIColor.green //右边槽的颜色
6,滑块后面槽线两侧添加图标
slider.minimumValueImage=UIImage(named:"11.jpg") //左边图标 slider.maximumValueImage=UIImage(named:"hgl.jpeg") //右边图标
7,自定义滑块组件图片(注:图片得标准)
//设置滑块右边部分的图片 slider.setMaximumTrackImage(UIImage(named: "11.jpg"), forState: .normal) //滑块左边部分的图片 slider.setMinimumTrackImage(UIImage(named: "hgl.jpeg"), forState: .normal) //设置滑块的图片 slider.setThumbImage(UIImage(named: "hgl.jpeg"), forState: UIControlState.normal)
//设置滑块右边部分的图片-使用三宫格缩放(左右14像素不变,中间缩放) let imgTrackRight = UIImage(named: "hgl.jpeg") let imgRight = imgTrackRight?.stretchableImage(withLeftCapWidth: 0, topCapHeight: 10) slider.setMaximumTrackImage(imgRight, forState: .normal)