拖出滑块时 UISlider 选定的拇指图像不会保留

时间:2021-02-03 02:29:41

标签: swift uikit uislider

我的滑块有两个拇指图像,设置方式如下:

seeker.setThumbImage(UIImage(named: "seeker-thumb-normal"), for: .normal)
seeker.setThumbImage(UIImage(named: "seeker-thumb-selected"), for: .highlighted)

这似乎工作得很好,除了当我开始拖动 UISlider 并将我的手指从滑块移开足够远时,滑块将拇指图像恢复为 .normal,即使我仍在跟踪。如何在整个跟踪事件期间保留选定的拇指图像?谢谢

1 个答案:

答案 0 :(得分:0)

尝试子类化 UISlider 并覆盖 trackRect(forBounds

class YourSlider: UISlider {
    override func trackRect(forBounds bounds: CGRect) -> CGRect {
        let point = CGPoint(x: bounds.minX, y: bounds.midY)
        return CGRect(origin: point, size: CGSize(width: Your image width, height: your image height))
    }
}

并在您的代码中使用 YourSlider 的实例而不是 UISlider。想法无耻地从这个medium article所有学分复制给作者

相关问题