2016-05-17 5 views
-2

私はEditTextを含むプログラムで作業しています。 EditTextはDecimalNumberのみを受け入れます。"。"の前にゼロを追加ユーザーがアンドロイドで ".123"または ".1234"を入力したとき

しかし、私の場合には: - このEditTextは」0.3232"

を受け入れ、私は必要なもの: - 出力はどのように私はこれを達成する必要があり、 "0.3232"

すべきですか? 私は

android:inputType="numberDecimal|number" 

ヘルプが

+0

テキスト 'addTextChangedListener'を使用してユーザー入力をチェックし、 '.123'種類の入力が含まれている場合は0を追加できます –

+0

Thanx for help、これを試してお知らせします –

答えて

1

が必要しかし、私の場合に使用している: - これのEditTextが「0.3232"

を受け入れてすでにその0.3232 == 0.3232

を意味します

あなたはプログラム的にそれを行う必要がある場合は、あなたは

String outPut= String.format("%.04f", yourValueFloat .3232); 
+0

私の編集した答えを確認します。前。 –

0

TextWatcherを追加し、私は千話の区切りのためにこれを達成する方法hereを参照してください詳しくはafterTextChanged

@Override 
    public void afterTextChanged(Editable s) {    
      String value = editText.getText().toString();  

      if (value != null && !value.equals("")) //Additional check 
      {  
       if(value.startsWith(".")){ 
        editText.setText("0."); 
       } 
      } 
     } 

でこれを追加します。それはあなたに役立つかもしれません。

+0

@AndrewIndayang提案していただきありがとうございます。 'afterTextChanged'は、ユーザーが単一の文字を押したときに直接呼び出され、その文字がDOTであれば、コピーと貼り付けのケースでなければ' 0'を突然設定します。 –

関連する問題