まだStoryboardの多言語対応で消耗してるの?ローカライズの最強ベストプラクティス対応法

公開日:  最終更新日:2020/09/05

こんにちは。もぐめっとです。 先日、大先輩のfmtonakai大師匠からすごい目からウロコのstoryboardのローカライズ対応について教えてもらいました。

storyboardにローカライズのキーを指定できるようにする

こう書いておくだけで、Android Studioのようにstoryboardからキーを設定してローカライズすることができるようになります。
image.png
すごい!画期的!!

ローカライズのキーtypoを防ぐ その1

このままだと、typoとかしたときにローカライズのキーがそのまま表示されてしまうのでローカライズ漏れに気づけるように改良してみました。 キーが無かった場合には強制的にアプリを落としてしまうことによってキーの漏れに気づけるようになりました。

ローカライズのキーtypoを防ぐ その2

その1の対応だと、画面を表示したときでないとtypoに気づけません。 そこで、ビルド時にキーのチェックをしてtypoに気づけるようにさらに改良してみました。 Build Phasesに下記スクリプトを追加するだけ! storyboardで設定されているlocalizedKeyをひっぱてきてLocalizable.stringsのファイルと突き合わせて存在しなければエラーを吐き出します。

まとめ

Android Studioに比べるとxcodeで至らぬところというのはまだまだありますが、今回の対応でLocalizable.stringsに文言を集約することができるようになり、よりローカライズがしやすくなってとってもウロコな方法でした。 storyboardでのローカライズはこの方法でやって、コードでの動的なローカライズについてはR.swiftやswiftgenなどで対応していって適材適所に使ってローカライズしていけるといいと思います。 今回の検証コードはこちらにおいてあります。 Special Thanks fmtonakai
  • このエントリーをはてなブックマークに追加
  • Pocket
PAGE TOP ↑