UIAppearanceプロトコル iOS5 から UIAppearance プロトコルが導入された。このプロトコルを使うと UINavigationBar や UISwitch のインスタンスの色を変更することができる。変更の仕方はこんな感じ。 [[UISwitch appearance] setOnTintColor:[UIColor greenColor]];UIAppearance が有用なのは、上記の通りインスタンスではなくクラスに対して色設定ができること。つまりこれを使うと画面上で使われているすべての UISwitch の色を変えることができる。 例えば緑基調の画面があったとして、UIAppearance プロトコルを使うと別の色(例では赤)に変更することができる。 上記の例は1画面だけだが、アプリで使われるすべての画面で色が変わる。 上記例の色変更の箇所のコードはこんな感じ。
![Cocoaの日々: UIAppearance で色や画像を変える](https://cdn-ak-scissors.b.st-hatena.com/image/square/e6e4a682b16a7e53fbd88bda1a7f8707d8f1523b/height=288;version=1;width=512/http%3A%2F%2F3.bp.blogspot.com%2F-Y6REze9oCUY%2FTqyWDBYi3KI%2FAAAAAAAAGW4%2FnjP-DBvMu3o%2Fs400%2F111027-0004.png)