2012-04-22 13 views
1
button = new Button (this); 
button.setText("Insert values"); 
tableLayout.addView(secondo); 

button.setOnClickListener(new OnClickListener(){ 
    public void onClick(View arg0) { 
     for(int i = 0; i < r1; i++){ 
      for(int j = 0; j < c1; j++){ 
       //insert values from a matrix of edittext in array  
       array[t] = Integer.parseInt(values[i][j].getText().toString()); 
       t++; 
      } 
     } 
    }  
}); 

このコードでは、edittextによる値の入力を制御したいので、入力値が正しくないときに警告が表示されます入力が間違っているとクラッシュします。おかげこのコードの入力値にコントロールを挿入します

答えて

2
try { 
    for(int i = 0; i < r1; i++){ 
     for(int j = 0; j < c1; j++){ 
      //insert values from a matrix of edittext in array 
      array[t] = Integer.parseInt(values[i][j].getText().toString()); 
      t++; 
     } 
    } 
} 
catch(NumberFormatException nfe) { 
    AlertDialog.Builder builder; 
    builder = new AlertDialog.Builder(MyActivityClassName.this); 
    builder.setTitle("Error"); 
    builder.setMessage("Wrong input format"); 
    builder.setIcon(android.R.drawable.ic_dialog_alert); 
    builder.setNeutralButton("OK", new DialogInterface.OnClickListener() { 
     @Override 
     public void onClick(DialogInterface dialog, int which) { 
     } 
    }); 
    builder.show(); 
} 
1

この

final EditText enterABC = (EditText) findViewById(R.id.userinput_no_edittext); 
Button okButton = (Button) findViewById(R.id.userinput_ok_button); 
okButton.setOnClickListener(new OnClickListener() { 
@Override 
public void onClick(View v) { 
// read from EditText when user presses OK button 
    mVariable = enterABC.getText().toString(); 
} 
}); 

を試してみて、あなたがコードを次のように問題を持っているなら、私にコメントを残します。

+0

私はtry {} catch {}と入力が間違っていると私にエラーメッセージを表示するalertdialogを考えていましたが、これでエントリを修正することができます – bisemanu

+0

あなたはあなたが探していたすべての答えを持っていると思います。ハッピーコーディング。 –

2

それに対処するには、2つの方法があります:あなたは、ユーザーが間違った入力を入力できるようにする習慣

一つは。 input type for EditTextを設定すると、入力が事前定義されたタイプの1つである場合に役立ちます。十分でない場合は、TextView's addTextChangedListenerを試すことができます。 EditTextTextViewに拡張されているので、EditTextでも使用できます。あなたは、あなたが入力を把握する必要があり、ユーザーがボタンを押した後に有効性をチェックしたい場合は、2番目の

のようなinvalideです次に、あなたが呼び出すことによってonClickハンドラでは、ユーザーにダイアログを表示することができますなどNumberFormatExceptionを引くことにより、フラグメントを使用していない場合はshowDialog、フラグメントを使用している場合はDialogFragmentです。

関連する問題