2011-12-29 15 views
1

私は1つのedittextに数字の入力のみしかありません。問題は、ユーザーが1234のnoとafterwrdsを変更したいと思っていて、そのためにdel key tat time wen he cmes at 2そして、私はのEditTextテキストの長さ0の場合場合も扱うが、STILここ をwrkngないしようとしたもう一回押すデルキー、アプリケーションcrashes.andが私のコードedittextアプリケーションがクラッシュする

input.addTextChangedListener(new TextWatcher() {    
     public void onTextChanged(CharSequence s, int start, 
           int before, int count) 
     { 
      final String in= input.getText().toString();//input is edittext 
      final int j=in.length(); 
      Cursor ansof1=(Cursor) mSpinner.getSelectedItem();//1st spinner tks 1 value 
      String temp=ansof1.getString(1); 

      Cursor ansof2=(Cursor)mSpinner2.getSelectedItem();//for 2 spinner 
      String temp2=ansof2.getString(1); 
      Cursor cn = myDbHelper.selectcur(temp); 
      double ans1=cn.getDouble(3); 
      Cursor cm=myDbHelper.selectcur(temp2); 
      double ans2=cm.getDouble(3); 
      no = Integer.parseInt(in); 

     final double finalans=((ans1/ans2)*no); 
     NumberFormat formatter = new DecimalFormat("##,##,###"); 
    if(temp.equalsIgnoreCase(temp2)) 
     { 

      //dlgAlert.setMessage("OOpss..!! Both Currencies Are Same...!!"); 
      text1.setText(no+" "+temp+" "+"="+" "+no+" "+temp2); 

      //dlgAlert.create().show(); 

     } 
     else 

     text1.setText(no+" "+temp+" "+"="+" "+formatter.format(finalans)+" "+temp2); 


     } 

     @Override 
     public void afterTextChanged(Editable arg0) 
     { 
      // TODO Auto-generated method stub 

     } 

     @Override 
     public void beforeTextChanged(CharSequence s, int start, int count, 
       int after) 
     { 
      // TODO Auto-generated method stub 

     } 
    }); 
+1

おそらく例外を記録してください。 – rfsk2010

答えて

2

であるあなたは数に空の文字列を変換しようとするからです。だから、このような文字列の長さを確認してください。

input.addTextChangedListener(new TextWatcher() {    
     public void onTextChanged(CharSequence s, int start, 
           int before, int count) 
     { 
      if(s.length()==0) 
      { 
       return; 
      } 
      else 
      { 
        // your code here 
      } 
} 
+0

-yup私はそれを得ました... thnx alot .. – sups

+0

あなた自身が解決策を見つけたことを知っておいても大丈夫ですが、StackOverflowの改善のために質問をし、自分自身で答えを見つけたときにお勧めします。それは答えとしてあなた自身のものを選んでください。いつかあなたが他の人に直面している問題が起こり、あなたから解決策を得ることができます。 – MKJParekh

+0

唯一正しい答え!どうもありがとう! –

関連する問題