Android @BindingConversion双精度转换为小数位数不同的字符串?

Android @BindingConversion双精度转换为小数位数不同的字符串?,android,android-databinding,Android,Android Databinding,当使用@BindingConversion时,如果我曾经想将一个Double转换为一个带两位小数的字符串,一个带三位小数的字符串,该怎么办?这是可能的还是我只能定义一种从Double到String的全局转换?您可以使用static@BindingConversion方法和全局变量的连接。像 var isEven = false @BindingConversion("yourMethod") fun doubleToString(aDouble:Double):String{ return S

当使用
@BindingConversion
时,如果我曾经想将一个Double转换为一个带两位小数的字符串,一个带三位小数的字符串,该怎么办?这是可能的还是我只能定义一种从Double到String的全局转换?

您可以使用static
@BindingConversion
方法和全局变量的连接。像

var isEven = false

@BindingConversion("yourMethod")
fun doubleToString(aDouble:Double):String{
return String.format(if(isEven)"%.3f" else "%.2f", aDouble).also {isEven!=isEven}

}

您可以将静态
@BindingConversion
方法与全局变量结合使用。像

var isEven = false

@BindingConversion("yourMethod")
fun doubleToString(aDouble:Double):String{
return String.format(if(isEven)"%.3f" else "%.2f", aDouble).also {isEven!=isEven}
}