2011-01-31 70 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