java - 在 android 的 editText 中使用 R.String

标签 java android string android-edittext

我的项目存储的所有字符串都在 string.xml 文件中。在大多数情况下,我使用它们没有问题,但出于某种原因,当我将字符串与整数混合时,它会向 editText 输出一个整数值,例如,如果我这样做:

editText.setText(R.string.x_plays + j)

我想向 GUI 显示“X Plays: 3”,但它向 GUI 显示一个大整数。如果我在没有 j(整数)的情况下执行此操作,那很好。

editText.setText(R.string.x_plays)

这只显示字符串“X Plays:”。

所以问题显然是试图将一个整数与一个 R.string 连接起来,但我不知道如何解决这个问题。我尝试使用 stringBuilder 并在 R.string 和整数周围添加空字符串 (""),但返回了类似的结果。我该如何解决这个问题?

最佳答案

之所以会出现这种情况是因为R.string.x_plays实际上是一个整数资源ID,某些方法能够将其转换为可以显示的字符串。其中之一是 setText。但是,如果您向此 ID 添加数字,它可能不再有效。

最简单的解决方案是只写 getString(R.string.x_plays) + j

您还可以将字符串更改为格式字符串,例如 X plays: %1$d 并改为编写 getString(R.string.x_plays, j)

参见:String Resources

关于java - 在 android 的 editText 中使用 R.String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28162669/

相关文章:

javascript - 字符串时如何连接参数值

java - 第二次循环尝试后出现错误消息

java - 如何在android中旋转 Canvas 上的可绘制对象

java - android删除 View 内的所有按钮

c++ - 返回一个空字符串 : efficient way in c++

c - 为什么 sizeof(*pointer) 输出为 1?

java - 如何继承/替换java的final类?

java - Java 中的 map 和集合

java - 方法引用 - 语法错误,插入 ";"以完成 BlockStatements

java - 膨胀 View 问题。尝试向布局添加 View 。类转换异常