ios - 快速更改多种颜色的 UISlider 轨道颜色?

标签 ios iphone swift

我可以使用我获得的值 (sender.value) 来改变 slider 移动时的颜色吗?随着 slider 的移动,我正在尝试将颜色从绿色更改为黄色再更改为红色。请 swift 帮忙谢谢!

let brokeSlider = UISlider(frame:CGRectMake(5, 440, 355, 20))
            brokeSlider.minimumValue = 0
            brokeSlider.maximumValue = 1
            brokeSlider.continuous = true
            brokeSlider.tintColor = UIColor.blackColor()
            brokeSlider.value = 0
            brokeSlider.addTarget(self, action: #selector(AnnotationPhotoWidget.sliderValueDidChange(_:)), forControlEvents: .ValueChanged)
            self.view.addSubview(brokeSlider)

    func sliderValueDidChange(sender:UISlider) {
            print("value--\(sender.value)")
    }

最佳答案

试试下面的代码:

func sliderValueDidChange(sender:UISlider) {
     print("value--\(sender.value)")
     if sender.value <= 0.3 {
        brokeSlider.minimumTrackTintColor = UIColor.green
     } else if sender.value > 0.3 && sender.value <= 0.6 {
           brokeSlider.minimumTrackTintColor = UIColor.yellow
     } else {
          brokeSlider.minimumTrackTintColor = UIColor.red
     }
}

关于ios - 快速更改多种颜色的 UISlider 轨道颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37888667/

相关文章:

ios - 资源包中的 Xib 仅针对小屏幕编译

iOS SwiftUI 搜索栏和 REST-API

iphone - 如何改变UINavigationBar的标签位置(frame)?

ios - UIViewControllers 中带有许多 UITableVIew 的 UIScrollView 消失了 UITableViewCell 的点击

ios - 使用 SwiftUI 从结构中的完成变量调用方法

ios - Metal 最佳实践 - 在渲染期间更改渲染管道描述符

ios - 在不使用全局变量的情况下在多个 swift 类中重用大型未更改数组

iphone - EKEventStore removeEvent EKErrorDomain 代码=11 EKErrorObjectBelongsToDifferentStore

iphone - 如何解决 'RootViewController' 在 Xcode 3.2.3 中可能无法响应 '-parseXMLFileAtURL:'

arrays - Resort Swift Array - 将空名称的对象移动到数组的末尾