在Edittext中输入十进制值?

我有一个编辑文本。 我想在其中输入小数值。

那是我输入第一个号码的时候。 它应该是这样的:.01

然后我输入了第二个数字。 它应该是这样的:.12

然后是第三个。 它应该是这样的:1.23

它会像这样……如何实现这个场景。 任何的想法?

您应该将TextWatcher添加到EditText。 这将在文本更改时通知您。

当您知道文本已更改时,您可以通过DecimalFormat运行它:

DecimalFormat decimalFormat = new DecimalFormat(); decimalFormat.setDecimalSeparatorAlwaysShown(true); decimalFormat.setMaximumFractionDigits(2); 

您可以使用TextWatcher查找字段中值的修改,并在键入时在适当的位置插入小数点。 有关使用TextWatcher的示例,请参阅此SO问题 。