Android 货币转换器数字格式
您好,我正在制作一个货币转换器,从印尼盾到其他12种货币。Android 货币转换器数字格式,android,kotlin,Android,Kotlin,您好,我正在制作一个货币转换器,从印尼盾到其他12种货币。 在下面的示例中,我希望获得: 对于10卢比➝ 0.001欧元 对于100 RP➝ 0.006欧元 对于1000卢比➝ 0.06欧元 对于100000卢比➝ 6欧元 对于1000000卢比➝ 60欧元 对于10000000卢比➝ 600欧元 我举了一个卢比兑欧元的例子。我有一个字段,输入一个值,其他值自动更新 我的问题是,在“显示”选项卡中,它将值与指数放在一起。我想要一个点后最多两位数的数字。有没有办法得到这个?谢谢大家! class
在下面的示例中,我希望获得:
对于10卢比➝ 0.001欧元
对于100 RP➝ 0.006欧元
对于1000卢比➝ 0.06欧元
对于100000卢比➝ 6欧元
对于1000000卢比➝ 60欧元
对于10000000卢比➝ 600欧元
我举了一个卢比兑欧元的例子。我有一个字段,输入一个值,其他值自动更新 我的问题是,在“显示”选项卡中,它将值与指数放在一起。我想要一个点后最多两位数的数字。有没有办法得到这个?谢谢大家!
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
valeurIdr.addTextChangedListener(object : TextWatcher {
override fun onTextChanged(s: CharSequence, start: Int, before: Int, count: Int) {
if (s.toString().equals("")) {
resultEuro.text=null
} else {
val idr = valeurIdr?.text.toString().toDouble()
val euro = 0.000060
resultEuro?.setText((idr * euro).toString())
}
}
override fun beforeTextChanged(
s: CharSequence, start: Int, count: Int, after: Int) {
}
override fun afterTextChanged(s: Editable) {
// TODO Auto-generated method stub
}
})
}
}
首先,这在数学上是不正确的 但是如果你想要6.000000=6.00
fun roundOffDecimal(number: Double): Double? {
val df = DecimalFormat("#.##")
df.roundingMode = RoundingMode.CEILING
return df.format(number).toDouble()
}
上面的方法为您提供两位数的最大值
ex:1.78345=1.79感谢您的反馈,如果我有100印尼盾,为什么这不正确?我必须得到0.006欧元。我提出了你的解决方案,但结果是一样的