2011-01-31 73 views
3

我有一个编辑文本。我想在其中输入小数值。在Edittext中输入十进制值?

即我输入第一个数字。它应该是这样的:.01

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

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

它会走这样....如何实现这个场景。任何想法?

回答

4

您应该将TextWatcher添加到EditText。这会在文字改变时通知你。

当你知道这些文本已更改,您可以通过一个DecimalFormat运行:

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

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

+0

请给我一些示例代码。 – Praveen 2011-02-01 09:36:01

+0

我相信我链接到的SO问题中有示例代码。 Google Code上还有很多TextWatcher的使用示例:http://code.google.com/query/#q=textwatcher – 2011-02-01 16:55:06