【问题标题】:Parse Int crashes app androidParse Int 使应用程序崩溃
【发布时间】:2016-03-26 23:20:05
【问题描述】:

我有一个editText,我需要用户能够输入一个值。我将输入类型设置为android:inputType="number"。然后我从editText中获取文本,如下所示:

EditText editText = (EditText) findViewById(R.id.myEditText);
String text = editText.getText().toString();

然后我需要将此文本转换为 int 以与其他 int 进行比较,因此我尝试解析 int 但它每次都会使我的应用程序崩溃。我尝试了很多东西,但它总是让我的应用程序崩溃。任何帮助都会非常有帮助,并提前感谢您。

【问题讨论】:

  • 你得到什么错误?能否请您也发布解析代码?
  • 也许用户没有在字段中写任何东西,“”不能表示为数字?

标签: java android parsing crash int


【解决方案1】:

使用以下代码直接从 editText 获取 Integer:

int textValue = Integer.parseInt(editText.getText().toString());

并使用 int textValue 与其他 int 进行比较。

【讨论】:

  • 感谢您的回复,但问题是它说它找到了一个字符串但需要一个 int。有没有办法解决这个问题?
  • 没关系我的问题是我将它传递给一个字符串仍然是意外谢谢!
  • 它在打开时使我的应用程序崩溃。我不知道该怎么办
【解决方案2】:

检查您的字符串是否为空,如果出现问题,您也可以使用 try 和 catch

    EditText editText = (EditText)(findViewById(R.id.edt));

    String value = editText.getText().toString();

    if(!value.isEmpty())
    {
        try
        {
            int int_value = Integer.parseInt(value);
        }catch (NumberFormatException e)
        {
            Log.e(TAG,e.getMessage());
        }
    }

【讨论】:

    猜你喜欢
    • 2014-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    • 2012-08-18
    • 2012-02-12
    • 2014-03-18
    • 2014-11-14
    相关资源
    最近更新 更多