Titanium Mobileの国際化・多言語対応

Titanium Mobileを国際化・多言語対応して環境ごとにメッセージを変更したり、文字列を置き換えなどする場合のメモ。

■strings.xmlの作成
アプリフォルダ直下にi18nフォルダを追加
enフォルダ、jaフォルダを追加し、それぞれにstrings.xmlを追加

en/strings.xml
<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <string name="error_msg">Error</string>
    <string name="replace_str">Your name is %s</string>
    <string name="some_val">Val1:%s Val2:%s</string>
</resources>

ja/strings.xml
<?xml version="1.0" encoding="UTF-8"?>
<resources>
    <string name="error_msg">エラー</string>
    <string name="replace_str">あなたの名前は%s</string>
    <string name="some_val">値1:%s 値2:%s</string>
</resources>

■文字列を取得
L('error_msg'); //=>日本語環境なら'エラー'、英語環境なら 'Error'
LTi.Locale.getString('error_msg')のショートカット

■文字列を置き換える場合はString.formatを使う
String.format(L('replace_str','Kevin')); //=>日本語:'あなたの名前はKevin'、英語:'Your name is Kevin'

■複数の文字列を置き換える
String.format(L('some_val','A','B')); //=>日本語:'値1:A 値2:B'、英語:'Val1:A Val2:B'
Titanium公式ドキュメントだと、
<string name="some_val">Val1:%1$s Val2:%2$s</string>
となっているけど、これだと文字化けする。
タグ:Titanium Mobile
posted by digital-squad at 2011年07月27日 18時00分 | Comment(0) | TrackBack(0) | Titanium Mobile
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。
この記事へのトラックバックURL
http://blog.seesaa.jp/tb/217020217
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック