无法将EditText文本转换为int

时间:2014-06-20 09:17:46

标签: android

我试图制作一个简单的高尔夫球得分应用程序,当我尝试转换EditText中用户输入孔的标准数时,我遇到了一个问题。用户只能在EditText中输入数字。它没有显示任何错误,并且在运行时不会崩溃,但无论EditText中有什么内容,它显然都不会从下面的代码中获取值。如果我将par设置为0以外的数字,当用户进入下一个洞时,它将影响总分,以便部分代码正常工作。此外,当我将此代码移动到除onClick(View v)以外的其他方法时,应用程序崩溃。感谢所有帮助。

 public void onClick(View v){
    if (parNum.getText().toString().equals("")){
        AlertDialog.Builder alert = new AlertDialog.Builder(this);
        alert.setTitle("Please enter the par");
        alert.show();
    }
    else {
        //editvalue is a string that I declared but gave no value.
        editvalue = parNum.getText().toString(); 
        par = Integer.parseInt(editvalue);
    }
}

1 个答案:

答案 0 :(得分:3)

您正在查看not equals ""。因此,请从if条件中删除!符号。

if (parNum.getText().toString().equals("")){
    AlertDialog.Builder alert = new AlertDialog.Builder(this);
    alert.setTitle("Please enter the par");
    alert.show();
}
else {
    //editvalue is a string that I declared but gave no value.
    editvalue = parNum.getText().toString(); 
    par = Integer.parseInt(editvalue);
}

我希望这会对你有所帮助。