Заменить textView для NumberPicker - Android
Итак, у меня есть некоторые textViews
что их входные данные являются числами, но чтобы быть менее подверженными ошибкам, я хочу заменить их на numberPickers
,
Что я сделал
TextViews
РаботаNumberPickers
Работа- Любые математические и расчетные работы
Что мне нужно:
Заменить метод ввода
Это то, что у меня есть для моего
textViews
when { time.text.isEmpty() && (distance.text.isNotEmpty() && pace.text.isNotEmpty()) -> calculatePace(null, distance.text.toString().toDouble(), pace.text.toString()) distance.text.isEmpty() && (time.text.isNotEmpty() && pace.text.isNotEmpty()) -> calculatePace(time.text.toString(), null, pace.text.toString()) pace.text.isEmpty() && (time.text.isNotEmpty() && distance.text.isNotEmpty()) -> calculatePace(time.text.toString(), distance.text.toString().toDouble(), null) else -> { Toast.makeText(this, "Please check fields", Toast.LENGTH_SHORT).show() } }
Это мои pickers
:
val pickerMinutes = numberPicker as NumberPicker
val pickerSeconds = numberPickerSeconds as NumberPicker
pickerMinutes.minValue = 0
pickerMinutes.maxValue = 60
pickerMinutes.wrapSelectorWheel = false
pickerMinutes.isEnabled = true
pickerSeconds.minValue = 0
pickerSeconds.maxValue = 60
pickerSeconds.wrapSelectorWheel = false
pickerSeconds.isEnabled = true
Любая помощь будет очень ценится
Спасибо
1 ответ
If you look at the NumberPicker API, you will see there is a method getValue()
which returns selected value, which is int return type. ты можешь использовать toDouble()
as your calculation method is taking double type
NB as NumberPicker always works with integer I think you can modify your calculation method, as it will never get Double from NumberPicker
please confirm, if I didn't get what you want