Kotlin:格式化字符串

3
我有一个 RecycleView,想要遍历它并在每个输入字符串前面添加一个项目符号。
我有以下内容:
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,但不带项目符号。

在Kotlin中格式化字符串的最佳实践是什么?

1个回答

9

你首先需要了解Android的工作原理。 R.string.skill返回字符串资源的资源id,是一个Int类型。如果要获取该资源的字符串,需要使用以下方法:

context.getString(resId)

它还支持字符串格式化。
context.getString(R.string.skill, skill)

context 可以是任何扩展自 Context 的东西,例如ActivityFragment

在 Kotlin 中格式化 String ,可以使用字符串插值。

val world = "World"
val helloWorld = "Hello $world"  // Hello World

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接