2009-07-09 148 views
1

我想设置正常状态的滑块的拇指图像,但仍然使用默认的轨道图像。自定义UISlider外观

所以我这样做:

[theSlider setThumbImage:[UIImage imageNamed:@"my_thumb.png"] 
forState: UIControlStateNormal]; 

,我得到我的图像显示为拇指,但随后默认曲目图像消失。

难道你不能只是自定义的拇指图像,并保持曲目图像默认?

回答

2

奇怪的是,这似乎并不可能。

作为一种解决方法,您有几个选择。截取并提取必要的图形以创建自己的几乎相同的最小和最大轨道图像应该不会太困难。您需要获得圆角边缘和平展部分的几个像素,这些部分将被拉伸。

或者,你可以尝试使用这种技术来提取实际图像:Extract UIKit artwork

就个人而言,我不明白为什么你不能混搭使用默认的图形自定义图形,但这似乎是如何Apple实施了这种控制。

+0

@ pix0r感谢您的链接,我会试试看。苹果的SDK充满了惊喜,是不是:)我没有看到文档中的任何内容,说如果你定制一个图像,你必须做的一切。我会提交一个bug到苹果 – 2009-07-09 18:30:46

0

在创建UISlider时,无论是在Interface Builder中还是在编程中,都要确保将Continuous变量设置为YES。 (即[mySlider setContinuous:YES])。设置此变量后,您应该可以使用自己的拇指图像。

+0

感谢您发布这个。我终于有机会尝试你的解决方法,但由于某种原因,它不适合我。你还在做其他事情吗? – 2009-07-29 02:50:17