Kotlin: строка формата

У меня есть представление Recycle, которое я хочу перебрать и добавить маркер перед каждой строкой ввода.

У меня есть следующее:

value.strings.xml

<string name="skill">• %1$s</string> 

ProfileListAdapter:

 fun bindSkills(skill: String) { itemView.recycleSkillItem.text = String.format(Locale(R.string.skill.toString()), ${R.string.skill}, skill) } 

Это печатает один и тот же int снова и снова без точки маркера.

Какова наилучшая практика форматирования строк в котлин?

Вы должны узнать, как работает Android в первую очередь. R.string.skill возвращает идентификатор ресурса строки, которая является Int Чтобы получить строку, из ресурса, вы должны использовать

 context.getString(resId) 

Он также поддерживает форматирование строк.

 context.getString(R.string.skill, skill) 

context может быть любое, что расширяет Context , т. е. Activity , Fragment .

Чтобы форматировать String в Kotlin, вы используете интерполяцию строк.

 val world = "World" val helloWorld = "Hello $world" // Hello World 
  • Почему добавление представления в мой макет меняет ширину всего макета?
  • Могу ли я использовать два xml-макета для использования одного и того же зрителя с использованием синтетических расширений Kotlin?
  • Как преобразовать java в kotlin в обработчик
  • Использование точек в xml-идентификаторах
  • Ошибка изображения элемента RecyclerView
  • Растровые изображения Android EffectFactory
  • Настройка прокладки программно и через xml
  • время подключения: подключиться к журналу IDE
  • Как вы объявляете полиморфное поле, которое использует JsonTypeInfo.As.WRAPPER_OBJECT с Jackson XML?
  • У меня есть 2 xml анимации, как я могу ее отделить?
  • XML в / из Java / Kotlin, кросс-платформенный
  • Давайте будем гением компьютера.