1

您好,很抱歉我的问题,我学习 Java,现在我正在为 android 构建一个测试程序。

int a = 10;

我用java:System.out.println(a);这很完美。

通过android我不能使用setText(a);

我需要将变量转换为字符串吗?

谢谢!

波尔

4

5 回答 5

1

您应该先阅读TextView的 Api 文档,然后您将了解在方法中传递整数值的含义setText()

setText()是一个重载的方法。

如果我们传递整数值,它将考虑我们在值 xml 文件(例如 string.xml)中声明的资源 id,因此如果您传递整数值,它将尝试找到与我们传递的给定整数相关的资源 id,它找不到与给定整数匹配的此类资源并且应用程序崩溃。

希望你现在明白了。

于 2012-11-05T16:47:31.343 回答
1

使用String.valueOf()将整数值转换为 String:

int a=10;

text_Rate.setText(String.valueOf(a));

或者您可以添加""Integer 以在 TextView 中显示整数值:

int a=10;

text_Rate.setText(""+a);
于 2012-11-05T15:31:33.460 回答
0

System.out.println()可以将 String 除外作为参数。但是setText()只接受一个字符串作为参数。因此,如果您想将数字显示为字符串,您可以使用该String.valueOf()方法。

我希望这有帮助。

于 2012-11-05T16:35:31.690 回答
0

您需要在 上给出Stringas 参数setText(),因为ais an intSystem.out.println()接受一切,因为重载方法之一是System.out.println(Object),但setText()没有。您可以使用String.valueOf(a)或仅使用setText("" + a).

于 2012-11-05T16:58:00.910 回答
0

您需要将 int 转换为 String 对象

String s = Integer.toString(a);
view.setText(s);
于 2012-11-05T15:31:54.660 回答