TextView.setText(int) causes app to crash
我在Android Studio中实现以下Java代码:
1 2 3 4 5 | private void display(int number) { TextView quantityTextView = (TextView) findViewById(R.id.quantity_text_view); quantityTextView.setText(number); ... } |
这是较大应用程序的一部分。
如您所见,我仅将整数值传递给
运行该应用程序时,该方法一被调用便崩溃。 你能告诉我为什么发生这种事吗?
是的,使用
1 2 3 4 | private void display(int number) { TextView quantityTextView = (TextView) findViewById(R.id.quantity_text_view); quantityTextView.setText(String.valueOf(number)); } |
因为
在这里检查:setText()方法
您可以将
您的代码崩溃的原因是
您应该首先将其转换为字符串,例如:
1 |
然后一切都会好的。
将整数转换为字符串,然后将其放入TextView中:
1 |
或简单地
1 | quantityTextView.setText(number+""); |
原因是,setText()仅需要string或char []。
因此,您可以执行类型转换或添加带数字的引号
(1)。按类型铸造
String.valueOf(数字)
(2)。通过在数字上加上"
QuantityTextView.setText(" + number);
要么
QuantityTextView.setText(number +");
TextView的setText()方法接受CharSequence,而不是整数。因此,您必须先将数字转换为String。
尝试使用此:
1 |