我有一个编辑文本框,想要在其中输入十进制数值。
当我输入第一个数字时,应该像这样:.01
然后我输入第二个数字时,应该像这样:.12
接着,对于第三个数字,应该是这样的:1.23
以此类推……如何实现这种情况?有什么想法吗?
我有一个编辑文本框,想要在其中输入十进制数值。
当我输入第一个数字时,应该像这样:.01
然后我输入第二个数字时,应该像这样:.12
接着,对于第三个数字,应该是这样的:1.23
以此类推……如何实现这种情况?有什么想法吗?
你需要向EditText添加一个TextWatcher。这将在文本更改时通知您。
当您知道文本已更改时,可以通过DecimalFormat对其进行处理:
DecimalFormat decimalFormat = new DecimalFormat();
decimalFormat.setDecimalSeparatorAlwaysShown(true);
decimalFormat.setMaximumFractionDigits(2);
您可以使用TextWatcher
来查找字段值的修改,并在输入时在适当位置插入小数点。请参见此SO问题,了解使用TextWatcher的示例。