TextView setText 显示的是整数而不是字符串

TextView setText is displaying ints instead of strings

我是 Android 编程的新手,正在尝试完成一项看似简单的任务,即显示用户的 Android 构建版本。我花了一段时间才克服运行时错误,即使没有编译器问题,该行也不会显示 int:

int version = Build.VERSION.SDK_INT;
mVersionTextView.setText(version);

我必须将它转换成这样的字符串:

mVersionTextView.setText(String.valueOf(version));

之后,我想向该数字添加一些信息,以便在构建之前显示一些文本,例如“API level 21”。我添加了一个名为“api_level”的字符串常量并尝试引用它,但没有成功。

我试过这个:

mVersionTextView.setText(R.string.api_level + " " + String.valueOf(version));

还有这个:

mVersionTextView.setText(String.valueOf(R.string.api_level) + " " + String.valueOf(version));

… 但它们都显示“2131361827 21”。换句话说,它显示的是 2131361827 而不是我的“API 级别”文本。

您需要使用 getTextgetString,例如 getString(R.string.api_level) 作为字符串资源。

R.string.api_level 是一个整数,使用 getString(R.string.api_level)
Build.VERSION.SDK_INT 也是 Integer