尝试在Android中繁殖
我试图制作一个简单的转换器,将输入的值乘以2.2,但在将结果发送到文本视图时遇到问题。我收到的错误是“无法解析方法setText(Double)”。有什么建议吗尝试在Android中繁殖,android,textview,Android,Textview,我试图制作一个简单的转换器,将输入的值乘以2.2,但在将结果发送到文本视图时遇到问题。我收到的错误是“无法解析方法setText(Double)”。有什么建议吗 public void onClick(View v) { double result =0; double a = Double.parseDouble(weightEntered.getText().toString().trim()); double b = 2.2; if(v == button_
public void onClick(View v) {
double result =0;
double a = Double.parseDouble(weightEntered.getText().toString().trim());
double b = 2.2;
if(v == button_convert)
{
if(lbs_kg.isChecked() == true)
result = (a * b);
t1.setText(result);
if(kg_lbs.isChecked() == true)
t1.setText("Selected is : "+kg_lbs.getText());
}
您需要将双精度值转换为字符串,因为
setText()
只能将文本值设置为其视图。
更新此行
t1.setText(result);
到
t1.setText(String.valueOf(result))
您需要将双精度值转换为字符串,因为setText()
只能将文本值设置为其视图。
更新此行
t1.setText(result);
到
t1.setText(String.valueOf(result))代码>将双精度转换为字符串
这很重要,因为存在于多个重载签名中
您在问题中使用的签名使用的是字符串资源ID!您需要首先将该数字转换为字符串,以便TextView知道如何正确使用它
String str = String.valueOf(result);
t1.setText(str);
将双精度转换为字符串
这很重要,因为存在于多个重载签名中
您在问题中使用的签名使用的是字符串资源ID!您需要首先将该数字转换为字符串,以便TextView知道如何正确使用它
String str = String.valueOf(result);
t1.setText(str);
使用String.format()
可以控制输出值的精度
使用String.format()
可以控制输出值的精度。告诉他为什么这很重要。同样String.valueOf(result)
也可以工作。这也是解决方案,但不是正确的方法@user3091082,如上所述,这不是将数字转换为字符串的好方法。检查其他答案并更新您的代码。@user3091082根据我更新的答案更新您的代码,因为旧方法不适合这样做,并标记正确的绿色符号,以便其他用户可以获得他们问题的答案。谢谢您的帮助。请大家告诉他为什么这很重要。同样String.valueOf(result)
也可以工作。这也是解决方案,但不是正确的方法@user3091082,如上所述,这不是将数字转换为字符串的好方法。检查其他答案并更新您的代码。@user3091082根据我更新的答案更新您的代码,因为旧方法不适合这样做,并标记正确的绿色符号,以便其他用户可以获得他们问题的答案。谢谢大家的帮助