R.swift5.0でZeplinについてのtipsです。
R.swift5.0未満のつらみ
R.swiftがCLRファイル形式しかサポートしていなかったので、せっかくZeplinがAsset Colorsを吐き出してくれるのに、R.color
が使えない...。(このCLRファイルが絶妙に使いにくいのです)
なのでZeplinで吐き出される自動生成のコードをXcodeのプロジェクトに追加して利用していました。この問題点は、デザインスペックの管理はZeplin、ソースコード上でのリソース管理はR.swiftに分離したいのに、一部ソースコード上でのリソース管理をZeplinが行なってしまうことです。
R.swift5.0以降の嬉しさ
R.swift5.0のリリースノートの一文に
Removed CLR file support, use color resources instead
CLRファイルのサポートを取り除いて、代わりにカラーリソースを使うようにしましたと書いてあります。
これによって、R.swift5.0からはColor Assetsを参照できるようになったので、自動生成のコードを利用しなくても問題なくなり以下のようなフローに改善されました。
- Zeplinの「export to xcassets」を押す
- ビルドをかける
- R.colorで色を参照可能になる
超楽!何もしなくて良い!
これによって、色に関してはデザインスペック管理はZeplin、リソース管理はR.swiftという分離を図ることができました。
要望
これはXcode側の問題なのですが、fontをxcassetで定義してコードとストーリーボードから参照できるようになれば、Zeplinがxcassetにfont吐き出して、R.swiftがそれをR.fontで使えるようにして...。ってなりそうなので良いなーと思っています。