我正在从菜单项调用对话框,并且在该对话框中有一个按钮,并在按下按钮时尝试执行某些操作。我的代码部分如下:
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.itTip:
final Dialog tipCalculator = new Dialog(this);
tipCalculator.setTitle("Tip Calculator");
tipCalculator.setContentView(R.layout.tip_layout);
totalBill = (EditText) findViewById(R.id.editTBill);
tips = (EditText) findViewById(R.id.editTTip);
calculate = (Button) findViewById(R.id.bCalcTip);
tvResult = (TextView) findViewById(R.id.tvTipResult);
calculate.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(getApplicationContext(), "Calculate clicked", Toast.LENGTH_SHORT).show();
}
});
tipCalculator.setCancelable(true);
tipCalculator.show();
break;
}
return super.onOptionsItemSelected(item);
}
当我运行我的应用程序时,没有 setOnClickListener,它可以正常工作并完美显示对话框。但是每当我尝试使用监听器时,它就会崩溃。我检查了 LogCat,实际上并不能清楚地理解这个问题。希望任何人都可以在这里帮助我。