誰かが私を助けることができたら、私は感謝します! 3つのEditText変数を文字列に変換してから整数に変換する必要があります。私はそれがなければ、スタートアップ時にプログラムがクラッシュするので、例外を追加しました。問題が変数の変換、try catchコード、またはその両方にあるかどうかはわかりません。助けてください!キャッチがうまくいかない(常にキャッチコードを実行)
package boston.project;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class TheBostonProjectActivity extends Activity {
public EditText aed, bed, ced;
public TextView dtv;
public int a, b, c;
public Button solve;
public double dis;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
aed = (EditText)(findViewById(R.id.etA));
try {
a = Integer.parseInt(aed.getText().toString());
} catch (NumberFormatException e) {
a = 0;
}
bed = (EditText)(findViewById(R.id.etB));
try {
b = Integer.parseInt(bed.getText().toString());
} catch (NumberFormatException e) {
b = 0;
}
ced = (EditText)(findViewById(R.id.etC));
try {
c = Integer.parseInt(ced.getText().toString());
} catch (NumberFormatException e) {
c = 0;
}
solve = (Button)(findViewById(R.id.bsolve));
solve.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// Perform action on click
dis = (b*b)-(4*a*c);
dtv = (TextView)findViewById(R.id.tvdis);
dtv.setText("Discriminant:" + dis);
}
});
}
}
あなたが話している問題は何ですか?起動時にクラッシュしますか? Imho EditTextが初期化されていない可能性があります。 – fuzzy