我最近刚开始学习如何开发android应用程序。我对Java非常熟练,但我仍然试图掌握Android和xml的东西。
所以,感谢提前的帮助:D!
现在,我只是想创建一个具有EditText小部件和按钮的应用程序。目前,我的所有代码都是为按钮创建一个OnClickListener,并定义OnClick方法。我不知道为什么它会强行关闭。我之前已经尝试了一些小程序(主要是试验按钮),我也有过几次这个问题,所以我觉得这个代码并不是唯一的。
以下是代码:
public class AdditionActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Toast.makeText(AdditionActivity.this, "Welcome to Addition Helper!", Toast.LENGTH_SHORT).show();
final EditText answerBox = (EditText) findViewById(R.id.answerBox);
final Button button = (Button) findViewById(R.id.button);
final TextView problem = (TextView) findViewById(R.id.problem);
//
//problem.setText("5+4");
button.setOnClickListener(new OnClickListener()
{
public void onClick(View v)
{
Toast.makeText(AdditionActivity.this, "Started", Toast.LENGTH_SHORT);
String temp = problem.getText().subSequence(0, 1).toString();
int first = Integer.parseInt(temp);
temp = problem.getText().subSequence(2,3).toString();
int second = Integer.parseInt(temp);
int answer = first + second;
if(Integer.parseInt(answerBox.getText().toString()) == answer)
Toast.makeText(AdditionActivity.this, "Correct!!!!!", Toast.LENGTH_SHORT);
else
Toast.makeText(AdditionActivity.this, "WRONG", Toast.LENGTH_SHORT);
}
});
}
}
因此,如果有人知道为什么初学者可能会频繁关闭力量,或者我的代码出错了,那就太棒了!在我的布局xml文件中,我所拥有的只是EditText小部件,TextView小部件和按钮。
再次感谢您的时间,我真的很感激。
答案 0 :(得分:0)
我认为您的场景在EditText中输入1 + 1,按下按钮并在TextView中显示结果。因此,
这是错误的:EditText answerBox和TextView问题
这是正确的:EditText问题和TextView answerBox
强制关闭主要是由于此行中的NullPointerException或ArrayIndexOutofBoundException:
String temp = problem.getText().subSequence(0, 1).toString();