2016-12-14 7 views
1

EditTextに自動文字を挿入することはできますか?私はaddTextChangedListenerメソッドを持っています。入力タイプはnumberDecimalです。私は入力を開始すると0を加えようとします。(ドット)この結果のようにしたいです(0.4,0.3など)。私はこのコードを書いたが動作していない。EditTextに文字を自動挿入する

countunicoinsSell.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
     } 

     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 


     } 

     @Override 
     public void afterTextChanged(Editable s) { 


      countCourse(s.toString()); 
     } 
    }); 


    private void countCourse(String value) { 
    if (value == null) 
     return; 
    if (value.startsWith(".")) { 
     countunicoinsSell.append("0"); 
    } 

} 

どうすればこの問題を解決できますか?

+0

変更この 'countunicoinsSell.append( "0")を助けるホープ); ' –

+0

これは、私はちょうど –

+0

がこのcountunicoinsSell.setText( "0" +値)を行う必要があると思います2つのドットが発生します。 –

答えて

0

これはあなたの試しに役立つかもしれません! `` countunicoinsSell.setText( "0。" +の値に、

etMobileNumber.addTextChangedListener(new TextWatcher() { 
     @Override 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 

      // TODO Auto-generated method stub 

     } 

     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

      // TODO Auto-generated method stub 
     } 

     @Override 
     public void afterTextChanged(Editable s) { 
      // TODO Auto-generated method stub 
      if(!s.toString().contains("0.")){ 
       etMobileNumber.setText("0."); 
       Selection.setSelection(etMobileNumber.getText(), etMobileNumber.getText().length()); 
      } 
     } 
    }); 
0

は、それが

private TextWatcher textWatcher = new TextWatcher() { 
 
     @Override 
 
     public void beforeTextChanged(CharSequence s, int start, int count, int after) { 
 

 
     } 
 

 
     @Override 
 
     public void onTextChanged(CharSequence s, int start, int before, int count) { 
 

 
     } 
 

 
     @Override 
 
     public void afterTextChanged(Editable s) { 
 

 
      if(s.toString().startsWith(".")){ 
 
       // append with 0 
 
       mEditText.setText("0" + mEditText.getText().toString()); 
 
       // move the cursor to the end of the string 
 
       mEditText.setSelection(mETEmail.length()); 
 
      } 
 
     } 
 
    };

0
if (value.startsWith(".")) { 
    countunicoinsSell.setText("0"+value); 
} 
+0

コードのみの回答は避け、解決策を説明してください。 – Micho

関連する問題