🌐
モダンなxcstringsでも、分割して画面毎に文言ファイルを持つことが可能
前提
ローカライズ文言のファイル(いわゆるLocalizable.stringsなど)が大きくなった。どうしましょう。分割しましょう。
以前のやり方
Localizable.stringsを
MenuLocalizable.strings
Content1Localizable.strings
Content2Localizable.strings
のように分割し
NSLocalizedString("Warning", tableName: "MenuLocalizable", comment: "")
や
String(localized: "Warning", table: "MenuLocalizable")
のようにアクセスする。ちなみにファイルの名前にLocalizableが入ってなくても可。
で、xcstringsで出来るの?
出来ます。同じように
NSLocalizedString("Warning", tableName: "MenuLocalizable", comment: "")
や
String(localized: "Warning", table: "MenuLocalizable")
と指定して、
MenuLocalizable.xcstringsファイルを持てば出来ます。
これはString Catalogsというモダンな方法です。String Catalogsでは、文言作成忘れ防止機能があります。これも機能しています。ソースコード上にtableNameとしてファイル名が書かれているので、ちゃんと対象のファイル内に忘れている項目が自動で作成されます。
String Catalogsのその他の記事です。
複数、分割、指定、個別、ローカライズ、localizable.strings、iOS、String Catalogs
Discussion