2012-12-10 39 views
1

我試圖自定義一個UISegmentedControl來爲每個段使用自定義圖像。我做了很多搜索,但迄今爲止我嘗試過的解決方案還沒有運氣。 This是我可以找到的最新帖子,它現在仍然相當過時,而且看起來還不錯。有沒有更好的或更新的指導如何做到這一點?UISegmentedControl每個段的自定義圖像

感謝

+0

你想改變圖像的內容或背景嗎? –

+0

內容。默認情況下,UISegmentedControl具有淺灰色段,外側段具有圓角和透明背景。我有一個分段控制3段,我需要使左側的段黃色,中間的綠色,和右側的紅色。每個細分圖像都有一個自定義漸變。 – chinabuffet

+1

查看本教程。這是你可以達到的最大值。 http://www.raywenderlich.com/4344/user-interface-customization-in-ios-5 – iDev

回答

3

不幸的是,UISegmentedControl不會很容易地爲每個段分別設置不同的背景圖片。如果您的控件始終是已知寬度,則可以使用三個分段繪製全尺寸背景圖像,如下所示:(yellow][green][red)(其中括號代表圓角),然後使用-[UISegmentedControl setBackgroundImage:forState:barMetrics:]設置圖像。

但是,如果您想稍後調整控件的大小,該解決方案不是非常靈活。你最好用三個相鄰的UIButton s僞造它,或者甚至子類UIControl來製作一個自定義的分段控件,該控件可以爲每個分段有一個單獨的圖像。