-2

私は完成したTitaniumAndroidアプリケーションを持っています(開発者は私ではありませんでした)。ローカライズしたいのですが、文字列とUIの両方がソースコードにハードコーディングされています。javascriptで構築されたアプリケーション。

アプリの右から左へのバージョンも必要なので、UIも重要です。

私はチタン環境にかなり慣れていないことを言及する必要があります。

このタスクへの最善のアプローチは何ですか?

4

2 に答える 2

2

ソースコードを取得し、ハードコードされたすべての文字列を見つけて、それらをil8n/フォルダーのstring.xmlファイルに移動する必要があります。表現したい特定のハードコードされた値に対応する文字列を使用して、適切な言語ディレクトリにこれらのファイルの1つを作成する必要があります。

例えば:

var mystring = L('hi_text');

Titaniumでは、このコードは(デバイスの設定の)言語フォルダー(つまり、英語またはenフォルダー)に移動し、次のようなエントリを探します。

il8n / enフォルダー:

<string name="hi_text">Hello</string>

デバイスがスペイン語モードの場合、同じコードがil8n/esフォルダーを検索します。

<string name="hi_text">Hola<string>

これにより言語を切り替えることができますが、UIを変更すると、ソースコードが大幅に変更される可能性があります。app.jsファイルで、デバイスの言語を検出し、画面のまったく異なるロジックに分岐しようとする場合があります。また、特定の画面のjavascriptファイルでもこれを行うことができます。このファイルでは、異なる言語ごとに1つの作成関数を呼び出します。その要件がまだ組み込まれていない場合は、アプリケーションのアーキテクチャを変更する可能性があります。

于 2012-12-26T19:44:51.493 に答える
0

公式ドキュメントは次のとおりです: https ://developer.appcelerator.com/question/125732/localization-not-working

于 2013-11-30T16:07:12.970 に答える