我有一个编辑文本。我想在其中输入小数值。在Edittext中输入十进制值?
即我输入第一个数字。它应该是这样的:.01
然后我输入第二个数字。它应该是这样的:.12
然后是第三个。它应该是这样的:1.23
它会走这样....如何实现这个场景。任何想法?
我有一个编辑文本。我想在其中输入小数值。在Edittext中输入十进制值?
即我输入第一个数字。它应该是这样的:.01
然后我输入第二个数字。它应该是这样的:.12
然后是第三个。它应该是这样的:1.23
它会走这样....如何实现这个场景。任何想法?
您应该将TextWatcher添加到EditText。这会在文字改变时通知你。
当你知道这些文本已更改,您可以通过一个DecimalFormat运行:
DecimalFormat decimalFormat = new DecimalFormat();
decimalFormat.setDecimalSeparatorAlwaysShown(true);
decimalFormat.setMaximumFractionDigits(2);
您可以使用TextWatcher
查找字段中值的修改,并在键入时在相应位置插入小数点。有关使用TextWatcher的示例,请参阅this SO question。
请给我一些示例代码。 – Praveen 2011-02-01 09:36:01
我相信我链接到的SO问题中有示例代码。 Google Code上还有很多TextWatcher的使用示例:http://code.google.com/query/#q=textwatcher – 2011-02-01 16:55:06