My inputs are not being recognised

So I have these 3 pickers

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

I created a Listener to get their value, but my validation is "working" to the point where it assumes the values didn't change. So it doesn't matter what value I choose on my pickers, it is not doing anything

Any ideas?

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()
        }
    }}