设置-修改语言为西班牙语 当前format后小数点变成逗号
- 按config.locale = Locale.SIMPLIFIED_CHINESE;配置后发现开启新的activity该配置对新activity无效
//原因:java.util.Locale类中不存在部分地区的语言,其中format最终调用如下方法
public static String format(Locale locale, String format, Object... args)
l != null ? l : Locale.getDefault()
入参locale默认为Locale.getDefault()
//单个修复,设置语种
double dValue = 360.672;
String strValue = String.format(Locale.ENGLISH,"%.2f",dValue);
//全局设置,修改默认语种
String languageToLoad = "zh";
Locale locale = new Locale(languageToLoad);
Locale.setDefault(locale);
Configuration config = this.getResources().getConfiguration();
DisplayMetrics metrics = this.getResources().getDisplayMetrics();
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N) {
Locale localeDefault = getResources().getConfiguration().getLocales().get(0);
localeDefault = Locale.SIMPLIFIED_CHINESE;
}else {
config.locale = Locale.SIMPLIFIED_CHINESE;
}
this.getResources().updateConfiguration(config, metrics);
参考链接
android 使用String.format("%.2f",67.876)自已定义语言(俄语、西班牙语)会把小数点变为逗号_mmsx的博客-CSDN博客
网友评论