【发布时间】:2018-02-19 12:11:10
【问题描述】:
如何更改 CAGradient 图层中的渐变图层,以便能够仅通过查看放置在滑块上的 CAGradient 图层的颜色来查看滑块上某个值的开始位置?这是我到目前为止的代码...
func sliderValueDidChange(slider:[UISlider]) {
for index in 0...slider.count - 1 {
let tgl = CAGradientLayer()
let frame = CGRect(x: 0, y: 0, width: Double(slider[index].bounds.width), height: 5)
tgl.frame = frame
tgl.colors = [UIColor.yellow.cgColor, UIColor.green.cgColor, UIColor.yellow.cgColor]
tgl.borderWidth = 0.5
tgl.borderColor = UIColor.gray.cgColor
tgl.cornerRadius = 2.5
tgl.endPoint = CGPoint(x: 1.0, y:1.0)
tgl.startPoint = CGPoint(x: 0.0, y:1.0)
UIGraphicsBeginImageContextWithOptions(tgl.frame.size, false, 0.0)
tgl.render(in: UIGraphicsGetCurrentContext()!)
let backgroundImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
slider[index].setMaximumTrackImage(backgroundImage?.resizableImage(withCapInsets: .init(top: 0.5, left: 1.0, bottom: 1.0, right: 1.0)), for:.normal)
slider[index].setMinimumTrackImage(backgroundImage?.resizableImage(withCapInsets: .zero), for:.normal)
}
【问题讨论】:
标签: swift4 xcode9 uislider cagradientlayer