2012-03-30 11 views
0

ボタンを削除し、次のコードでプロセスを自動化したいと思います。私は周りを見回してきましたが、私が必要とする答えを見つけたわけではありません。OnClickListenerとオートメーションの削除

public class MainActivity extends Activity { 
EditText Number1; 
EditText Number2; 
Button calc; 
TextView output; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
    Number1 = (EditText) findViewById(R.id.Number1); 
    Number2 = (EditText) findViewById(R.id.Number2); 
    calc = (Button) findViewById(R.id.calc); 
    output = (TextView) findViewById(R.id.output); 
} 

public void doCalc (View view) { 
    double intNum1 = Double.parseDouble(Number1.getText().toString()); 
    double intNum2 = Double.parseDouble(Number2.getText().toString()); 
    double mOutput = (intNum1*intNum2); 
    output.setText("Output" + mOutput); 
} 

}

私は任意のヘルプははるかに高く評価されるように、主にいくつかのperlスクリプトをやったのjavaに非常に新しいです。

+0

どのように自動化されますか?ボタンが押されると、doCalc()は数値を取り、それらの合計を出力します。したがって、この印刷は自動的に行われますか? –

+0

Number1とNumber2にdoCalcが呼び出されたときに、ボタンを押さずにボタンを完全に削除したいと思います。 – tim

+0

次に、両方の編集ボックスに対してonTextChangedListener()を設定し、テキストが変更されたときにcalcを実行する必要があります。 –

答えて

0

ボタンを削除するには、TextWatcherを使用して、変更しているテキストフィールドを監視する必要があります。このような 何か:

 TextWatcher watcher = new TextWatcher() {     
      @Override 
      public void afterTextChanged(Editable s) {       
       double d = Double.parseDouble(Number1.getText()) * Double.parseDouble(Number2.getText()); 
       result.setText(d + ""); 
       } 
      } 
      @Override 
      public void beforeTextChanged(CharSequence s, int start, int count, int after) { } 
      @Override 
      public void onTextChanged(CharSequence s, int start, int before, int count) { } 

     }); 
Number1.addTextChangedListener(watcher); 
Number2.addTextChangedListener(watcher); 

どんなバグのため申し訳ありませんが、私はほとんどのコピー/貼り付け迅速、幸運を。

+0

答えをありがとう、これは私が探していたものです。 – tim

関連する問題