2012-10-30 18 views
3

在應用程序中定製UIButtons的外觀的最佳方式是什麼?我正在開發一款應用程序,在其中我們通過編程方式更新UIButtons以尋找我們想要的方式。大多數按鈕都是在Interface Builder中創建的,我們希望以有效的方式在它們上執行我們的customizeButton-方法。我只看到兩種實現方法:定製UIButtons的有效方法

  1. 創建IB中的按鈕,將它們分配到插座,並在代碼調用customizeButton爲每個按鈕。 問題:太過分hazzle
  2. 子類UIButton,在構造函數initWithCoder:中調用customizeButton。然後使用這個類來獲得IB中的按鈕。 問題: allthough這適用於在IB中創建的按鈕,並且比第1點需要更少的樣板代碼,因爲它們的類集羣,我已經閱讀了針對UIButton子類的所有警告。

顯然有一些更好的辦法,什麼是第3點?

回答

2

看看UIAppearance。它自iOS 5起可用,尤其適用於自定義標準UI元素。

永遠可定製的類是一種名爲+appearance:的類方法,您可以像這樣使用它。

[[UIButton appearance] setBackgroundColor:[UIColor redColor]]; 

每個按鈕現在都有紅色的背景色。

要開始查看WWDC11視頻的Ray Wenderlichs教程User Interface Customization in iOS 5和/或會話114 - Customizing the Appearance of UIKit Controls

+0

不錯,謝謝。出於好奇,在iOS 5之前有沒有好的選擇? –

+0

我猜是子類化的方式 – Pfitz