UISlider - 绘制线条/图像到轨道(条形图)

时间:2014-09-08 15:40:28

标签: ios objective-c uislider

我有UISlider最小和最大曲目颜色。我想在滑块轨道的中间绘制垂直线(或图像)。这条线必须一直存在,只有它上面的颜色会不同(最小/最大轨道颜色)。

如果我将UIImage放在Slider背景上,则轨道会覆盖它。如果我为曲目设置了清晰的颜色,我可以看到线条,但没有颜色来自曲目(显然)。有没有简单的方法,如何做到这一点,或者我必须覆盖Slider的drawRect方法?

像图片中的滑块

enter image description here

3 个答案:

答案 0 :(得分:1)

添加一个1像素宽的UIView,并具有Slider的高度并将其放在滑块上。

答案 1 :(得分:1)

请注意"终极"这类项目的解决方案是......

http://www.paintcodeapp.com

正如@BradAllred所指出的,这里的根本问题是:你试图避免使用drawRect

实际上,您只能通过继承UIControl或滑块来实现您的目标。

正如其他人提到的那样,幸运的是有许多很棒的教程等等 - 这并不难。

再次paintcodeapp.com是一个令人难以置信的秘密"制作iOS应用程序,享受。

答案 2 :(得分:0)

创建一个CALayer,绘制它,(甚至添加一个图像),然后将该图层作为子图层添加到Slider的layer.contents。