我的输入不被识别

所以我有这3个采摘

val pickerHours = numberPickerHours as NumberPicker val pickerMinutes = numberPicker as NumberPicker val pickerSeconds = numberPickerSeconds as NumberPicker 

我创建了一个Listener来获取它们的值,但是我的验证正在“工作”到假定值没有改变的地步。 所以,我选择什么样的价值并不重要,它没有做任何事情

有任何想法吗?

 var timerString = "" var timerString1 = "" var timerString2 = "" pickerHours.minValue = 0 pickerHours.maxValue = 100 pickerHours.wrapSelectorWheel = false pickerHours.isEnabled = true pickerMinutes.minValue = 0 pickerMinutes.maxValue = 60 pickerMinutes.wrapSelectorWheel = false pickerMinutes.isEnabled = true pickerSeconds.minValue = 0 pickerSeconds.maxValue = 60 pickerSeconds.wrapSelectorWheel = false pickerSeconds.isEnabled = true pickerHours.setOnValueChangedListener { picker, oldVal, newVal -> timerString = newVal.toString() + ":" + pickerMinutes.value.toString() + ":" + pickerSeconds.value.toString() } pickerMinutes.setOnValueChangedListener { picker, oldVal, newVal -> timerString = pickerHours.value.toString() + ":" + newVal + ":" + pickerSeconds.value } pickerSeconds.setOnValueChangedListener { picker, oldVal, newVal -> timerString = pickerHours.value.toString() + ":" + pickerMinutes.value.toString() + ":" + newVal } calculateBtn.setOnClickListener { when { timerString.isEmpty() && timerString1.isEmpty() && timerString2.isEmpty() && (distance.text.isNotEmpty() && pace.text.isNotEmpty()) -> calculatePace(null, distance.text.toString().toDouble(), pace.text.toString()) distance.text.isEmpty() && (timerString.isNotEmpty() && timerString1.isNotEmpty() && timerString2.isNotEmpty() && pace.text.isNotEmpty()) -> calculatePace(timerString, null, pace.text.toString()) (time.text.isNotEmpty() && distance.text.isNotEmpty()) -> calculatePace(timerString, distance.text.toString().toDouble(), null) else -> { Toast.makeText(this, "Please check fields", Toast.LENGTH_SHORT).show() } }}