数字格式化问题 Android 5.0

文章标签: android,android-5.0
2015-1-22 9:39:24     人阅读    

运行app android 5.0发现一个奇怪的问题,在android 5.0之前的版本,我的app运行的时候显示数字是带有千位符号的 例如 "1,234" or "100,000"
在android 5.0 上运行的时候,数字就没有逗号了,显示如下  "1234" or "100000" ,其他人有没有注意到这个问题?

 

我通过如下的函数格式了我的数字,我现在不是很确定我该如何处理才能然个数字展示一直是我想要的格式?

public static String formatNumber(Integer number, String prefix) {
 
    if (prefix == null) {
 
        prefix = Constants.PREFIX_SYMBOL;
 
    }



    StringBuilder stringBuilder = new StringBuilder(prefix);
 
    NumberFormat numberFormatter = NumberFormat.getIntegerInstance(new Locale("en_UK"));
 
    stringBuilder.append("").append(numberFormatter.format(number));



    return stringBuilder.toString();
}
}


 

处理方法

我想了一个解决方法如下,

public static String formatNumber(Integer number, String prefix) {
 
    if (prefix == null) {
 
        prefix = Constants.PREFIX_SYMBOL;
 
    }



    StringBuilder stringBuilder = new StringBuilder(prefix);
 
    NumberFormat numberFormatter = NumberFormat.getIntegerInstance();
 
    stringBuilder.append("").append(numberFormatter.format(number));



    return stringBuilder.toString();
}
}

the NumberFormat.getIntegerInstance(); 方法中移除 Locale,冒失也不怎么好用...出现其他问题

最后编辑:

NumberFormat numberFormatter = NumberFormat.getIntegerInstance(new Locale("en_UK"));


使用这种方式展示

NumberFormat numberFormatter = NumberFormat.getIntegerInstance(new Locale("en", "GB"));


原文地址:http://www.itmmd.com/201501/536.html
该文章由 萌萌的IT人 整理发布,转载须标明出处。

android学习笔记(48)android内部类作为事件监听类   上一篇
下一篇  Android Lollipop 5.0 无法获得后台运行的activity名称
精彩回复
我要追加问题,请求站长解决!
姓名:       

《程序员app》专门为程序员量身定做!