Пожалуйста, H, ошибка: не удалось выполнить метод для Android: onClick

Когда я нажал кнопку без ввода чего-либо, эта ошибка

 public void Confirmer(View view) {

    if (TextUtils.isEmpty(min.getText())){
        Toast.makeText(ObjectifActivity.this,"text!",Toast.LENGTH_LONG).show();
    }

    if (TextUtils.isEmpty(max.getText())){
        Toast.makeText(ObjectifActivity.this,"text!",Toast.LENGTH_LONG).show();
    }

    int min_cal = Integer.parseInt(min.getText().toString());//This error
    int max_cal = Integer.parseInt(max.getText().toString());//This error

    if (max_cal < min_cal){
        Toast.makeText(ObjectifActivity.this,"text!", Toast.LENGTH_LONG).show();
    }else{

        SharedPreferences objectif = getSharedPreferences("objectif", MODE_PRIVATE);
        SharedPreferences.Editor editor = objectif.edit();
        editor.putInt("min",min_cal);
        editor.putInt("max", max_cal);
        editor.commit();
        Toast.makeText(ObjectifActivity.this, "ok!", Toast.LENGTH_LONG).show();
        Intent  intent = new Intent(this,MainActivity.class);
        startActivity(intent);

    }
}




    <Button
    android:layout_width = "wrap_content"
    android:layout_height = "wrap_content"
    android:text = "@string/Confirmer"
    android:id = "@+id/button"
    android:background = "@color/colorPrimary"
    android:onClick = "Confirmer"
    android:layout_below = "@+id/linearLayout2"
    android:layout_alignParentEnd = "true"
    android:layout_marginTop = "121dp" />
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
2
0
50
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Вы можете вызвать return внутри условия if, чтобы остановить функцию, выполняющую приведенные ниже коды.

if (TextUtils.isEmpty(min.getText())){
    Toast.makeText(MainActivity.this,"text!",Toast.LENGTH_LONG).show();
    return;
}

if (TextUtils.isEmpty(max.getText())){
    Toast.makeText(MainActivity.this,"text!",Toast.LENGTH_LONG).show();
    return;
}

Также обязательно используйте android:inputType = "number" в своих текстах редактирования, иначе будет NumberFormatException

   if (!TextUtils.isEmpty(min.getText().trim())) {
        if (!TextUtils.isEmpty(max.getText().trim())) {
            int min_cal = Integer.parseInt(min.getText().toString());
            int max_cal = Integer.parseInt(max.getText().toString());
            if (max_cal < min_cal) {
                Toast.makeText(ObjectifActivity.this, "text!", Toast.LENGTH_LONG).show();
            } else {
                SharedPreferences objectif = getSharedPreferences("objectif", MODE_PRIVATE);
                SharedPreferences.Editor editor = objectif.edit();
                editor.putInt("min", min_cal);
                editor.putInt("max", max_cal);
                editor.commit();
                Toast.makeText(ObjectifActivity.this, "ok!", Toast.LENGTH_LONG).show();
                Intent intent = new Intent(this, MainActivity.class);
                startActivity(intent);
            }
        } else {
            Toast.makeText(ObjectifActivity.this, "max value is empty!", Toast.LENGTH_LONG).show();
        }
    } else {
        Toast.makeText(ObjectifActivity.this, "min value is empty!", Toast.LENGTH_LONG).show();
    }
}

Другие вопросы по теме