我想格式化发送到edittext框的文本,以便最多显示2个小数位,例如XXX.00。从developer.android网站我已经能够创建格式变量(或者它是枚举?),如下所示:
NumberFormat nf = new NumberFormat;
nf.setMaximumFractionDigits(2);
我试着格式化我的字符串s = nf.format(s);但它不起作用。 如何使用nf格式化字符串以为编辑文本框准备它?
另外,我如何从developers.android网站上找到“NumberFormat”?有没有办法阅读网站来解决这个问题,或者该网站是不完整的?
答案 0 :(得分:2)
试试这个。您的代码看起来不完整NumberFormat文档看起来很完整。
NumberFormat nf = NumberFormat.getInstance(); // get instance for your locale
nf.setMaximumFractionDigits(2); // set decimal places
String s = nf.format(100.0232); // the parameter must be a long or double
答案 1 :(得分:1)
我创建了一个用于格式化文本的方法:
public static String formatDouble(double doubleToFormat, int min, int max) {
NUMBER_FORMAT.setMaximumFractionDigits(max);
NUMBER_FORMAT.setMinimumFractionDigits(min);
return NUMBER_FORMAT.format(doubleToFormat);
}
这是我的NUMBER_FORMAT
字段:
public static final NumberFormat NUMBER_FORMAT = NumberFormat.getInstance();
使用它:
myEditText.setText(formatDouble(153.141254, 2, 2));
myEditText
中的结果文字:153.14
使用此功能(formatDouble
),您可以发送任何 min 或 max 值