2010-12-02 10 views
2

初めてのアンドロイドプロジェクト以来の私のパズル。 「エン」デフォルトとしてで多言語の文字列リソースを考えてみましょう:Android:マルチ言語リソースで文字列を再利用する方法

res/values/strings.xml  <--- The default language 'en' 
res/values-de/strings.xml <--- de 
res/values-fr/strings.xml <--- fr 
res/values-it/strings.xml <--- it 

そのフォルダ構造では、このアプリのためのAndroidマーケットのエントリは、「唯一のデフォルト、ドイツ語、フランス語、イタリア語」の言語サポートを示しています。はい、そのリストには英語がありません。

"values"フォルダの完全なデフォルト文字列リソースを追加の "values-en"フォルダに "include"することは可能ですか?もちろん、デフォルトの文字列リソースですべてが宣言されているので、そのファイルをその新しいフォルダに保持したくありません。

事前に感謝します。

ハラルド

答えて

4

問題がどこにあるのかよくわかりません。 values-enディレクトリを作成し、デフォルトのディレクトリから新しいディレクトリにコピーします。

そのデフォルト値ディレクトリへのシンボリックリンクが必要な場合は、デフォルトのディレクトリ内で何かを変更すると、リンクされたディレクトリのファイルは同じ変更を表します。File -> New -> Folderフォルダを作成し(resディレクトリ)、Advanced >>をクリックしてLink to alternate location (Linked Folder)を選択し、リンク先のディレクトリ(あなたの場合はvaluesディレクトリ)を参照してください。

valuesディレクトリ内で何かを変更するたびに、すべての変更が新しいリンクされたディレクトリに適用されます。

+0

はい! strings.xmlのコピーはオプションではありませんでした(重複保守の必要性)。しかし、フォルダとファイルの作成ダイアログの[詳細]ボタンは見落としました。手動でフォルダの値-enを作成し、既定のフォルダを指すリンクファイルstrings.xmlを作成しました。非常に良い解決策。私は知っています、これらの文字列は現在apkで2倍ですが、私は顧客に重要な言語の翻訳を見てもらいたいです。 Googleはデフォルトをどの言語で定義できるかをボックスに追加する必要があります。ご協力いただきありがとうございます。 –

+0

ありがとうございました! – Tima

+0

残念なことに、これは私にとってはうまくいかなかった - リンクが作成されたが、インストール後、デフォルトの言語しか表示されない(既定は英語、通常のチェコ語(cs)、リンクされたものはスロバキア語 – James

関連する問題