2011-07-29 18 views
3

我有一個簡單的黑色導航欄與當按下該按鈕的按鈕獲取顏色爲具有相同梯度導航欄相同下列按鈕如何更改選定欄按鈕的顏色?

enter image description here

。但我希望它看起來像這樣:

enter image description here

所以這有一個簡單的黑色背景色。任何想法如何通過界面生成器來實現?或者這是否需要編程方式?

回答

2

這很簡單,首先你需要做到這一點。轉到您的界面構建器。請按照下列步驟操作 -

  1. 選擇UIButton元素。打開右側邊欄,其中給出了關於按鈕的屬性。選擇Type作爲Custom
  2. 現在在那裏,尋找state config。按鈕的各種狀態 - 默認,突出顯示,選中,禁用。根據需要在image中定義各種不同的圖像。基本上選擇圖像,以滿足你想要的效果。
  3. 現在,這會根據按鈕的狀態自動處理按鈕元素外觀的變化。
  4. 但有時候,你會想通過代碼手動更改狀態。這是可以做到像這樣 - [yourButton setSelected:BOOL][yourButton setHighlighted:BOOL][yourButton setEnabled:BOOL]

希望這有助於...

更新:見截圖 - 這個鏡頭顯示,有定義的,「默認」狀態,「突出顯示'...這定義了狀態。您可以爲每個狀態定義圖像。同樣,希望這有助於...

enter image description here

+0

你的狀態配置是什麼意思?我找不到它在xcode 4 –

+0

等,讓我附上截圖 –

+0

啊我錯過了你的意思是UIButton。但我明白了你的想法。謝謝! –

2

是的,它需要一些編程..但如果你想做到這一點使用IB那麼你可以使用一個骯髒的方式.. 您可以使用圖片爲所有這些控件。(是的這就是爲什麼這是骯髒的),如果你有PSD的設計,然後你可以切片每個元素。就像你可以切割工具欄背景(黑色條),並且可以將它作爲圖像放置在特定位置。那麼你就可以在其上添加一個按鈕,並設置其圖像(正常,並強調狀態)

我會盡力通過編碼來做到這一點,如果我找到了一種方法,然後我會張貼在這裏..

+0

我認爲,這是最簡單,最好的方式。我們有許多使用兩個圖像的自定義控件。 – TiansHUo

1

控制外觀超出指定文字或灰度圖像以及iOS 4中UIBarButtonItemUIBarButtonItemStyle唯一受支持的方式是將其設計爲視圖(可能是UIButton的一個子類),並使用initWithCustomView:將該視圖設置爲UIBarButtonItem

或者您可以完全跳過UIToolbar,只需將UIButton s放在UIImageView之上即可實現您所需的視覺效果。