如何在Android中格式化国际货币?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
textView1.text = formatCurrency(1f, CURRENCY_US_DOLLARS, LANGUAGE_ENGLISH, COUNTRY_US)
textView2.text = formatCurrency(1f, CURRENCY_US_DOLLARS, LANGUAGE_ENGLISH, COUNTRY_CANADA)
textView3.text = formatCurrency(1f, CURRENCY_US_DOLLARS, LANGUAGE_ENGLISH, COUNTRY_AUSTRALIA)
}
private fun formatCurrency(amount: Float, currency: String, language: String, country: String) =
currencyInLocale(currency, language, country).format(amount)
private fun currencyInLocale(
currencyCode: String,
language: String,
country: String = "",
variant: String = ""): NumberFormat =
Locale(language, country, variant).let {
NumberFormat.getCurrencyInstance(it).apply {
currency = Currency.getInstance(currencyCode)
}
}
companion object {
private const val CURRENCY_US_DOLLARS: String = "USD"
private const val LANGUAGE_ENGLISH: String = "EN"
private const val COUNTRY_US: String = "US"
private const val COUNTRY_CANADA: String = "CA"
private const val COUNTRY_AUSTRALIA: String = "AU"
}
}
关于如何在Android中格式化国际货币问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注天达云行业资讯频道了解更多相关知识。