以下のコードは、2 つの EditText 値を取り、それらを整数に変換し、それらを除算してその数値を出力しようとしています。私は運が悪く、毎回障害に次ぐ障害に遭遇しています。ユーザーから 2 つの値を取得して割るのがなぜ難しいのか、私には理解できません。私はJava/Androidが初めてで、なぜ物事が起こっているのかを理解したいので、誰かが答えを持っている場合は詳細に説明してください。この1つの問題に1週間頭を悩ませてきたので、今はイライラしています。
package com.simplesavinggoal;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
import android.widget.EditText;
public class MainActivity extends Activity {
int finalGoal;
EditText goalInput;
EditText monthsNum;
Button enterGoal;
TextView goalOutput;
int goalInputInt;
int monthsNumInt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
enterGoal = (Button) findViewById(R.id.btGetGoal);
goalOutput = (TextView) findViewById(R.id.tvSavingsGoalAmount);
goalInput = (EditText) findViewById(R.id.ndSavingsAmount);
monthsNum = (EditText) findViewById(R.id.ndMonthsNum);
enterGoal.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
goalInputInt = Integer.parseInt(goalInput.getText().toString());
monthsNumInt = Integer.parseInt(monthsNum.getText().toString());
finalGoal = goalInputInt / monthsNumInt;
goalOutput.setText(finalGoal);
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}