让 EditText 只显示两位小数

我想在EditText 中只显示两位小数。我想在edit text中显示currency,但是想限制数在小数点后两位。

我不想用正则表达式这个方法。我查找的资料说java支持一些internal library函数能实现这个功能。请大家帮忙给点建议。

amount.setRawInputType(Configuration.KEYBOARD_12KEY);
         amount.addTextChangedListener(new TextWatcher() 
         {
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                DecimalFormat formatVal = new DecimalFormat("##.##");
                String formatted = formatVal.format(s);
                amount.setText(formatted);
            }


偶然的你
浏览 668回答 2
2回答

子衿沉夜

你可以简单地使用 DecimalFormatDecimalFormat format = new DecimalFormat("##.##"); String formatted = format.format(22.123); editText.setText(formatted);就会在 EditText 获得 22.12的结果。

慕森卡

&nbsp;&nbsp;EditText.addTextChangedListener(new&nbsp;TextWatcher()&nbsp; &nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;afterTextChanged(Editable&nbsp;edt)&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;temp&nbsp;=&nbsp;edt.toString(); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int&nbsp;posDot&nbsp;=&nbsp;temp.indexOf("."); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(posDot&nbsp;<=&nbsp;0)&nbsp;return; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(temp.length()&nbsp;-&nbsp;posDot&nbsp;-&nbsp;1&nbsp;>&nbsp;2) &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{ &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edt.delete(posDot&nbsp;+&nbsp;3,&nbsp;posDot&nbsp;+&nbsp;4); &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;beforeTextChanged(CharSequence&nbsp;arg0,&nbsp;int&nbsp;arg1,&nbsp;int&nbsp;arg2,&nbsp;int&nbsp;arg3)&nbsp;{} &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;public&nbsp;void&nbsp;onTextChanged(CharSequence&nbsp;arg0,&nbsp;int&nbsp;arg1,&nbsp;int&nbsp;arg2,&nbsp;int&nbsp;arg3)&nbsp;{} &nbsp;&nbsp;});以前看到过的例子
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java