Проверка значений параметров EditText вызывает сбой

У меня есть EditText (inputValue), который принимает numberDecimal формат, который мне нужно проверить. Функция проверки называется:

buttonCalculate.setOnClickListener { pickFunction() } 

Если этот EditText остается пустым, я получаю немедленную сбой программы после каждой нажатия кнопки. Если я заполню форму нулем, затем нажмите кнопку, проверка будет работать, как ожидалось.

  fun pickFunction() { val s: String = inputValue.getText().toString().trim() val d = inputValue.getText().toString().toDouble() if(s.isNullOrEmpty()) { Toast.makeText(applicationContext, "Blank value entered", Toast.LENGTH_SHORT).show() return } if( d <= 0) { Toast.makeText(applicationContext, "Zero value entered", Toast.LENGTH_SHORT).show() return } // go do something with valid value } 

Solutions Collecting From Web of "Проверка значений параметров EditText вызывает сбой"

нажатие кнопки Edittext потому что ваш Edittext не имеет никакого значения, и вы вызываете .trim() и .toDouble() для ссылки на нулевой объект. Перед вызовом методов обрезки и todouble проверьте нулевое состояние проверки.

Используйте toDoubleOrNull () вместо toDouble() или оберните эту строку в try-catch для обработки NumberFormatException .