我已經瞭解到,在iOS 5中,可以使用外觀對標記爲UI_APPEARANCE_SELECTOR的屬性進行樣式設置。例如[[UINavigationBar外觀] setTintColor:....]。但是,我似乎無法對所有元素進行樣式設計。例如,UIButton沒有標記爲UI_APPEARANCE_SELECTOR的屬性,因此我無法使用上述技術對其進行設置。如何全局樣式不支持外觀的元素
我的問題是:當我無法使用外觀時,我如何在全球範圍內最好地設計樣式元素(所有外觀都在應用程序中)?
現在我已經定義了一些顏色,字體,陰影偏移等,我在我的代碼中使用了許多不同的地方。這使我可以改變很多元素的外觀和行爲,但它仍然不允許我只用一行代碼來設置某個對象的所有實例。
編輯
在缺乏更好的解決方案,我已經創造了多項categories簡單方法如下所示:
+ (UIButton *)customLabelWithFrame:(CGRect)frame andText:(NSString *)text;
而且我發現 - 與所描述的類別組合 - stretchable images很好,很有用。
通過以上我能在全球十歲上下的方式的風格,但我不滿意的結果,我還是希望能找到一個更好的解決方案
我發現一些沒有用UI_APPEARANCE_SELECTOR標記的東西可以和UIAppearance一起使用......例如,一些UIView屬性。我不會建議這是一個很好的答案,因爲它可能會破壞任何發行版,但我發現在這種情況下,邏輯勝過了文檔。 – 2012-04-10 16:09:29
有趣。但我同意這可能不是最合適的方式。 – 2012-04-11 05:59:19