0

我正在尝试使用图像进行自定义uislider(没有可见的旋钮,当用户无法编辑时将其隐藏并在可以时显示它)问题是侧面渲染完美,但右侧部分很可爱并且没有'似乎没有使用边缘......知道我如何编辑它吗?

实际代码:

    let capLeft:CGFloat =  9
    let capRight:CGFloat = 9
    imageMin = imageMinimum?.resizableImage(withCapInsets: UIEdgeInsets(top: 0, left: capLeft, bottom: 0, right: capRight), resizingMode: .stretch)
    imageMax = imageMaximum
    slider.setMaximumTrackImage(imageMax, for: UIControlState())
    slider.setMinimumTrackImage(imageMin, for: UIControlState())

它是如何渲染的: 糟糕的滑块渲染

它应该如何呈现: 良好的渲染

最小轨道图像: 在此处输入图像描述

最大跟踪图像:在此处输入图像描述

你有什么主意吗 ?

4

1 回答 1

0

我认为最小和最大图像与UISlider.

Min 图像在 Thumb 的左侧绘制(并拉伸)。Max 图像在 Thumb 的右侧绘制(并拉伸)。

创建一个小的方形纯红色图像 - 例如 16x16 - 并将其(不带插图)分配给.setMaximumTrackImage. 当您从低值到高值时,看看最终的结果如何。

编辑:对于这个例子,我在 Min 图像上使用了 NO insets ......

在此处输入图像描述 在此处输入图像描述

注意:我在这些大写字母中为拇指使用了 20x20 的清晰图像。

于 2017-03-31T12:50:47.420 回答