2009-07-09 345 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