所以我有一个带数字输入的简单编辑文本。 用户输入他的电话号码,它显然是保存到DB中的目标。 现在,每次我做
int contactNumber=Integer.parseInt(mContactNumber.getText().toString());
我得到一个错误,因为某些原因它不喜欢数字字符串而引发NumberFormatException。我确保android输入字段中的mContactNumber字段具有
android:input="number"
现在我也试着确定
int contactNumber=Integer.parseInt(mContactNumber.getText().toString().trim());
仍然是同样的错误
有什么想法?
答案 0 :(得分:5)
尝试将Type设置为'long'而不是'int'。希望这对你有用。
答案 1 :(得分:3)
这可能是因为您将文本字段留空。你确定你没有解析一个空字符串吗?
答案 2 :(得分:2)
你需要提出一个简单的条件:
if(mContactNumber.getText().length()>0)
{
int contactNumber=Integer.parseInt(mContactNumber.getText().toString().trim());
}
答案 3 :(得分:2)
对于电话号码,您不能将其视为整数。尝试将其作为字符串,在获得该字符串后,您只能通过
检查数字TextUtils.isDigitsOnly(str);