ローカライズ ( Localize )
多言語化。キーの定義 - Localizable.strings
- Project > Localizations で 言語を追加
- File > New > Resource > String Catalog
- ファイル例
- デフォルトの
Localizable.xcstrings
を指定 - Info.plist の場合は
InfoPlist.xcstrings
を指定
- デフォルトの
- 操作
- Targets > Info にはキーだけ指定
- xcstrings ファイルにキーと値を指定 ←
$(PRODUCT_NAME)
みたいなのはどこで指定・・?
- 設定例
CFBundleName
=$(PRODUCT_NAME)
← デフォルトNSCalendarsFullAccessUsageDescription
NSRemindersFullAccessUsageDescription
=$(REMINDER_FULL_ACCESS_DESCRIPTION)
← 例
- ファイル例
- 実行すると自動で追加される・・
- それぞれの言語のキー追加
実行時に言語を切り替える - Edit Scheme
- メニューのアプリ名のところから Edit Scheme..
- Run > Options > Application Language
コードから
Text()
の引数にあるものは localize キーと足されるが、
コードで生成したい場合は、String(localized:)
を使う
swift
let defaultName = String(localized: "Term.Preset.None")