2017-09-25 11 views
0

私はLocalizable.stringファイルを使って自分のアプリケーションをローカライズし、プロジェクトのすべてのテキストにキーを提供していました。Xcode 9とSwift 4でアプリケーションをローカライズするには?

現在、私はXcode 9とSwift 4を使っているプロジェクトに取り組んでいます。初めてストーリーボードを使用しています(はい、私は奇妙に聞こえますが、ストーリーボードを使わずにSpriteKitを使用しました)それをローカライズする方法を混乱させました。基本的に私の質問は:

UILabelのストーリーボードのローカリゼーションを使用するか、Localizable.stringにすべてを実装して、ラベルに値を付けてコードする必要がありますか?

これをローカライズする最も良い方法は何ですか?

+0

どうやってXcode 9を入手しましたか? –

+0

@Llg Apple Storeでアップデートしました。問題がある場合は、アップルのWebサイトからもダウンロードできます – user3582537

+0

App Storeから通知を受け取りましたか?あなたが持っていた最後のXcodeバージョンは何ですか? –

答えて

0

ストーリーボードのローカライズの代わりにLocalizable.stringを使用することをおすすめします。これは、ストーリーボードのラベルのIDが変更される可能性があるためです。

+0

Xcode 9アップデートはどうすれば入手できますか?私はXcode 8.3.3を持っているので、アップデートのためにアプリケーションストアにチェックインすると、Xcodeを取得できません。 –

+0

あなたの答えをありがとう!間違いなく 'Localizable.strings'ファイルを使用します – user3582537

0

良い/悪い解決策はありません。それはあなたのUILabelの目的によって異なります。アプリのライフサイクル中に変更されない要素の場合は、ストーリーボードのローカリゼーションを直接使用することをおすすめします。代わりに、ラベルの値が異なる場合は、ローカライズされた文字列をプログラムで設定することをお勧めします。

0

私が見つけた最も信頼できる解決策の1つは、これは私のために正確に働きます。

まず、ストーリーボードを使用してローカライズ文字列ファイルを作成する必要があります。すべてのオブジェクトにIDを自動的に作成します。 これに続いてtutorial

次に、IDに基づいてそれぞれの翻訳文字列を選択する1つのライブラリMCLocaliztionを使用できます。私たちは、オブジェクトIDに基づいて適切なjsonを準備する必要があります。

希望します。

関連する問題