1

所以我有一个带有数字输入的简单编辑文本。用户输入他的电话号码,显然这就是目标。现在每次我做

int contactNumber=Integer.parseInt(mContactNumber.getText().toString());

我收到一个错误,说 NumberFormatException 出于某种原因它不喜欢一串数字。我已确保 android 输入字段中的 mContactNumber 字段具有

android:input="number"

现在我也试着确定

int contactNumber=Integer.parseInt(mContactNumber.getText().toString().trim());

仍然是同样的错误

各位有什么想法吗?

4

4 回答 4

5

尝试将 Type 设置为“long”而不是“int”。希望这对你有用。

于 2011-11-02T07:03:20.483 回答
3

这可能是因为您将文本字段留空。你确定你没有解析一个空字符串吗?

于 2011-11-02T05:41:22.017 回答
2

你需要提出一个简单的条件:

if(mContactNumber.getText().length()>0)
{
    int contactNumber=Integer.parseInt(mContactNumber.getText().toString().trim());
}
于 2011-11-02T05:45:10.380 回答
2

对于电话号码,您不能将其视为整数。尝试仅将其作为字符串,在获得该字符串后,您只能通过以下方式检查数字

TextUtils.isDigitsOnly(str);
于 2011-11-02T06:52:51.180 回答