我如何使用NumberFormat& maxDecimalFraction()函数?

时间:2011-03-01 18:26:14

标签: android

我想格式化发送到edittext框的文本,以便最多显示2个小数位,例如XXX.00。从developer.android网站我已经能够创建格式变量(或者它是枚举?),如下所示:

NumberFormat nf = new NumberFormat;
nf.setMaximumFractionDigits(2);

我试着格式化我的字符串s = nf.format(s);但它不起作用。 如何使用nf格式化字符串以为编辑文本框准备它?

另外,我如何从developers.android网站上找到“NumberFormat”?有没有办法阅读网站来解决这个问题,或者该网站是不完整的?

2 个答案:

答案 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