我一直在試圖建立一個數學閃存卡應用程序,用戶輸入兩個數字,然後選擇一個按鈕,取決於它是否需要數字加,減或乘。三個按鈕OnClickListener Android應用
圖片:http://i.stack.imgur.com/83FdN.png
的問題似乎是OnClickListener。我創建了一個按鈕的其他項目,他們完美的工作,但有兩個按鈕,我不知道該怎麼做。
我曾嘗試:
- 每個按鈕創建OnclickSListener,代碼不顯示任何錯誤,但是當我嘗試運行應用程序迫使其關閉。
- 我試過這個帖子上的方法:Android - multiple OnClickListener?和這一個http://blog.idleworx.com/2011/06/build-simple-android-app-2-button.html和stil該應用程序顯示沒有錯誤,但無法運行。
我已將按鈕代碼取出並運行,然後運行。我不知道還有什麼要做。
這是我嘗試使用一個按鈕嘗試的最後一個代碼,應用程序仍然強制關閉。
public class MainActivity extends ActionBarActivity implements OnClickListener{
int num1, num2, total;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText txtInt1 = (EditText)findViewById(R.id.txtInt1);
final EditText txtInt2 = (EditText)findViewById(R.id.txtInt2);
final TextView result = (TextView) findViewById(R.id.txtResult);
num1 = Integer.parseInt(txtInt1.getText().toString());
num2 = Integer.parseInt(txtInt2.getText().toString());
final Button btnAddition = (Button) findViewById(R.id.btnAddition);
Button btnSubstraction = (Button) findViewById(R.id.btnSubstraction);
Button btnMultiplication = (Button) findViewById(R.id.btnMultiplication);
/*
btnSubstraction.setOnClickListener(this);
btnAddition.setOnClickListener(this);
btnMultiplication.setOnClickListener(this); */
btnAddition.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if (v == btnAddition){
if (num1 <=0 || num1 >20 || num2 <=0 || num2 >20){
Toast.makeText(MainActivity.this, "The numbers shoudl be between 1 and 20",
Toast.LENGTH_SHORT).show();
}
else {
total = num1+num2;
result.setText(num1+" + "+num2+" = "+total);
}
}
}
});
謝謝!
因此,當您點擊'btnAddition'時,您發佈的代碼什麼也不做?我很困惑。 「onClick」的所有實現都可以工作,因此您需要現在選擇一個,並告訴我們如果崩潰,錯誤消息將會發生什麼。 – codeMagic 2014-10-28 18:04:06
爲崩潰添加錯誤日誌 – 2014-10-28 18:04:52
爲什麼你需要最終的修飾符? – 2014-10-28 18:15:24