strings.xml にパラメータは使用できますか? [重複] 質問する

strings.xml にパラメータは使用できますか? [重複] 質問する

Android アプリで国際化された文字列を実装するつもりです。異なる言語での文法と文章の構築方法に問題があります。

例えば:

「5分前」 - 英語

「5分前」 - ドイツ語

strings.xml で次のようなことを実行できますか?

<string name="timeFormat">{0} minutes ago</string>

そして魔法のような

getString(R.id.timeFormat, dynamicTimeValue)

この動作により、語順が異なる場合の他の問題も解決されます。

ベストアンサー1

はい、文字列を標準的なString.format()方法でフォーマットするだけです。

方法を見るContext.getString(int, Object...)そしてそのアンドロイドまたはジャワ Formatterドキュメンテーション。

あなたの場合、文字列の定義は次のようになります。

<string name="timeFormat">%1$d minutes ago</string>

おすすめ記事