在Android EditText中删除$符号

时间:2016-10-05 09:29:52

标签: android

我正在使用此代码在Android EditText控件上使用货币格式。 但是如何从结果中删除$符号(或用另一个符号替换)?

public void afterTextChanged(Editable s) {
    if (!s.toString().equals(current)) {
        inputValue.removeTextChangedListener(this);

        String cleanString = s.toString().replaceAll("\\D", "");

        if (cleanString.length() > 0) {
            double parsed = Double.parseDouble(cleanString);
            NumberFormat formatter = NumberFormat.getCurrencyInstance();
            formatter.setMaximumFractionDigits(0);
            current = formatter.format(parsed);
        } else {
            current = cleanString;
        }


        inputValue.setText(current);
        inputValue.setSelection(current.length());
        inputValue.addTextChangedListener(this);
    }
}

谢谢!

Screenshot

1 个答案:

答案 0 :(得分:0)

Heyy Vu Duong,我尝试过这样的事情。希望这可以帮助你

column1, column1_mean, column2, column2_mean

我在这里做的是,只添加了 @Override public void afterTextChanged(Editable s) { if (!s.toString().equals(current)) { inputValue.removeTextChangedListener(this); String cleanString = s.toString().replaceAll("\\D", ""); if (cleanString.length() > 0) { double parsed = Double.parseDouble(cleanString); NumberFormat formatter = NumberFormat.getCurrencyInstance(); formatter.setMaximumFractionDigits(0); current = formatter.format(parsed); sub = current.substring(1, current.length()); } else { current = cleanString; } inputValue.setText(current); inputValue.setSelection(current.length()); inputValue.addTextChangedListener(this); Log.e("Amount ", "::" + sub); } } ,其中包含您在EditText中输入的值。但请注意,String sub仅从位置1获取值(即不包括$)。如果您查看代码,我将其打印在日志中。所以你可以进一步使用这个子值。