0
私は以下のものと同じ設定で100文字以上の配列を持っています。配列内のすべての文字列をローカライズする方法はありますか、これを設定するより良い方法ですか?Swift:文字列の配列をローカライズ
var listOfThings = ["Cars", "Mopeds"]
私は以下のものと同じ設定で100文字以上の配列を持っています。配列内のすべての文字列をローカライズする方法はありますか、これを設定するより良い方法ですか?Swift:文字列の配列をローカライズ
var listOfThings = ["Cars", "Mopeds"]
文字列をplistファイルに入れることをお勧めします。その後、必要に応じてplistファイルをローカライズすることができます。あなたのコードにすべての文字列を入れるよりもずっと良いです。
Bundle
クラスを使用してplistファイルへのパスを取得すると、ファイルのローカライズされた適切なバージョンへのパスが自動的に表示されます。次にplistファイルから配列をロードし(NSArray
を使用し、次にSwift配列にブリッジする)。
あなたはThings.plist
という名前のローカライズされたplistファイルを作成したと仮定すると、以下のように、あなたはそれをロードすることができます。
if let plistURL = Bundle.main.url(forResource: "Things", withExtension: "plist") {
if let plistArray = NSArray(contentsOf: plistURL) as? [String] {
listOfThings = plistArray
}
}
おかげで多くのことを。いくつかのサンプルコードはどこからでも見てきましたが、何も見つかりませんでした。いくつかのコードでこれを行う方法を私に示してもらえますか? – Gjeruldsen
私の更新答えを見てください。 – rmaddy