Возможны параметры в strings.xml? [дубликат]

Этот вопрос уже имеет ответ здесь:

В моем приложении для Android I'am, собирающийся реализовать мои строки с интернационализацией. У меня есть проблема с грамматикой и способом, которым предложения создают на различных языках.

Например:

"5 минут назад" - английский язык

"vor 5 Minuten" - немецкий язык

Я могу сделать что-то как следующее в strings.xml?

{0} minutes ago

И затем некоторое волшебство как

getString(R.id.timeFormat, dynamicTimeValue)

Это поведение решило бы другую проблему с различными порядками слов также.

268
задан Flimzy 28 December 2018 в 22:32
поделиться

2 ответа

Да, просто отформатируйте свои строки стандартным способом String.format () .

См. Документацию по методу Context.getString (int, Object ...) и Android или Java Formatter .

В вашем случае определение строки будет следующим:

<string name="timeFormat">%1$d minutes ago</string>
339
ответ дан 23 November 2019 в 02:21
поделиться

Обратите внимание, что для этого конкретного приложения существует стандартная библиотечная функция, android.text.format.DateUtils.getRelativeTimeSpanString()

12
ответ дан 23 November 2019 в 02:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: