将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
任何帮助将非常感激
谢谢
如果你看看NumberPicker API,你会看到有一个方法getValue()
返回选定的值,这是int返回类型。 您可以使用toDouble()
作为您的计算方法采取双重类型
NB NumberPicker总是与整数工作我认为你可以修改你的计算方法,因为它永远不会从NumberPicker获得Double
请确认,如果我没有得到你想要的