android - 我的 Bmi 计算器应用程序 - kotlin 出了什么问题?
问题描述
- 嘿,我是 android 的新手,我已经做了一个简单的 BMi 计算器,我有一个
spinner
选择一个值,我必须制作一个可以在spinner
选择后更改值的计算器,我没有收到任何错误但是我注意到能够看到答案。
请检查我在这方面做错了什么
' class MainActivity : AppCompatActivity() {
var valueofHeightInCm: Double = 0.0
var valueofHeighInInch: Double = 0.0
var valueofHeightInMeter: Double = 0.0
var showResult: Double = 0.0
var enterWeight: Double = 0.0
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
try {
valueofHeightInCm = et_enterheight.text.toString().toDouble() / 100
valueofHeighInInch = et_enterheight.text.toString().toDouble() * 2.54
valueofHeightInMeter = et_enterheight.text.toString().toDouble() * 0.01
enterWeight = et_enterweight.text.toString().toDouble()
} catch (e: NumberFormatException) {
Toast.makeText(this,"please Entter input",Toast.LENGTH_SHORT).show()
}
val heightMeasure = resources.getStringArray(R.array.height)
val adapter = ArrayAdapter(this, android.R.layout.simple_spinner_item, heightMeasure)
spinner1.adapter = adapter
spinner1.onItemSelectedListener = object : AdapterView.OnItemSelectedListener {
override fun onNothingSelected(parent: AdapterView<*>?) {}
override fun onItemSelected(
parent: AdapterView<*>?,
view: View?,
position: Int,
id: Long
) {
when (position) {
0-> {
et_enterheight.setHint("Enter Height in Cm")
showw_result.setOnClickListener {
showResult = (enterWeight / (valueofHeightInCm * valueofHeightInCm))
tv_showResult.text = "%.2f".format(showResult)
}
}
1 -> {
et_enterheight.setHint("Enter Height in Inch")
showw_result.setOnClickListener {
showResult =
(enterWeight / (valueofHeighInInch * valueofHeighInInch)).toDouble()
tv_showResult.text = "%.2f".format(showResult)
}
}
2 -> {
et_enterheight.setHint("Enter Height in Meter")
showw_result.setOnClickListener {
showResult =
(enterWeight / (valueofHeightInMeter * valueofHeightInMeter))
tv_showResult.text = "%.2f".format(showResult)
}
}
}
}
}
}
解决方案
推荐阅读
- css-selectors - 抑制 Bootstrap Dismissable Popover 边框突出显示
- java - Lombok @Builder 用于具有强制字段的多级继承中的类
- c# - Visual Studio 2019“附加”而不是“开始”问题
- c++ - 小数输出后加两个零
- python - 使用 numpy.linalg.eig 查找具有未知变量的矩阵的特征值
- java - Spring安全程序化内存中UserDetailsService:用户名和角色,无密码
- reactjs - React - Axost 提出请求得到奇怪的结果
- sql - 从层次结构函数更新表 - SAP HANA
- java - ev3dev 用 bluecove 连接蓝牙设备
- ios - Firebase 在获取数据时返回 nil