Webの世界ではスタイルシートが当たり前です。デザインとHTML構造がある程度分離できるようになったことでメンテナンス性が向上したり、修正が一括で適用されるようになったりします。 それと同じ世界をiOSアプリでも目指そうというのがClassyになります。スタイルシートに似た構文で画面デザインができるようになります。

Classyの使い方

例えばこんな構文です。

$main-color = #e1e1e1;

MYCustomView {
  background-color: $main-color;
  title-insets: 5, 10, 5, 10;
  > UIProgressView.tinted {
    progress-tint-color: black;
    track-tint-color: yellow;
  }
}

^UIButton.warning, UIView.warning ^UIButton {
  title-color[state:highlighted]: #e3e3e3;
}

例えば例として。背景を青にしています。

Xcode上でredにすると、リアルタイムに変更されます。

CocoapPodsに対応していますので、

pod 'Classy'

でインストールできます。あまり凝ったUIでは難しいかも知れませんが、iOS8標準の画面構成であればClassyを使って画面デザインとコードを切り離せるようになるかも知れませんね。

ClassyはiOS用、MIT Licenseのオープンソース・ソフトウェアです。

Classy cloudkite/Classy