LoginSignup
5
0

More than 3 years have passed since last update.

R.swift5.0でZeplinとの色の連携が完璧になった

Last updated at Posted at 2019-09-15

R.swift5.0でZeplinについてのtipsです。

R.swift5.0未満のつらみ

R.swiftがCLRファイル形式しかサポートしていなかったので、せっかくZeplinがAsset Colorsを吐き出してくれるのに、R.colorが使えない...。(このCLRファイルが絶妙に使いにくいのです)

なのでZeplinで吐き出される自動生成のコードをXcodeのプロジェクトに追加して利用していました。この問題点は、デザインスペックの管理はZeplin、ソースコード上でのリソース管理はR.swiftに分離したいのに、一部ソースコード上でのリソース管理をZeplinが行なってしまうことです。

この下側のような自動生成コードを使っていました。
スクリーンショット 2019-09-15 15.32.59.png

R.swift5.0以降の嬉しさ

R.swift5.0のリリースノートの一文に

Removed CLR file support, use color resources instead

CLRファイルのサポートを取り除いて、代わりにカラーリソースを使うようにしましたと書いてあります。

これによって、R.swift5.0からはColor Assetsを参照できるようになったので、自動生成のコードを利用しなくても問題なくなり以下のようなフローに改善されました。

  1. Zeplinの「export to xcassets」を押す
    スクリーンショット 2019-09-15 15.47.39.png

  2. ビルドをかける

  3. R.colorで色を参照可能になる

超楽!何もしなくて良い!

これによって、色に関してはデザインスペック管理はZeplin、リソース管理はR.swiftという分離を図ることができました。

要望

これはXcode側の問題なのですが、fontをxcassetで定義してコードとストーリーボードから参照できるようになれば、Zeplinがxcassetにfont吐き出して、R.swiftがそれをR.fontで使えるようにして...。ってなりそうなので良いなーと思っています。

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0