16
A
回答
38
大多數ellegant模式遵循:
public void onClick(View v) {
switch(v.getId())
{
case R.id.button_a_id:
// handle button A click;
break;
case R.id.button_b_id:
// handle button B click;
break;
default:
throw new RuntimeException("Unknow button ID");
}
通過這種方式,它更simplier調試它,並確保您不會錯過以處理任何單擊。
1
如果「執行相同的方法,」你的意思是他們的OnClickListener,那麼你必須引用被傳遞給它的參數。
public void onClick(View v) {
if(v==btnA) {
doA();
} else if(v==btnB) {
doB();
}
}
-1
好得到了解決
if (yesButton.getId() == ((Button) v).getId()){
// remainingNumber
}
else if (noButton.getId() == ((Button) v).getId())
{
// it was the second button
}
4
或...您可以在 按鈕的xml代碼中放一個android:onClick =「foo」,並在java上定義一個帶簽名的方法。裏面的 方法foo,得到了ID,並且與你需要
public void foo(View v){
if (v.getId() == R.id.yourButton){
}
else if (v.getId() == R.id.nextButton){
}
}
4
的一個比較我有10個按鈕執行相同的方法updateText()
,我用這個代碼來獲取點擊按鈕的文字:
public void updateText(View v){
Button btn = (Button) findViewById(v.getId());
String text = btn.getText().toString();
}
相關問題
- 1. 如何確定哪個按鈕被按下了三個按鈕
- 2. 確定用戶按下哪個按鈕
- 3. 如何確定Android中的按鈕列表中按下了哪個按鈕?
- 4. 如何確定用戶在ABUnknownPersonViewController中按下哪個按鈕?
- 5. 如何確定哪個「+」鍵被按下?
- 6. 確定按下哪個鍵
- 7. 如何確定按下按鈕的行?
- 8. 按下哪個按鈕
- 9. 確定按下「Backspace」按鈕
- 10. AJAX和Codeigniter - 確定按下哪個按鈕來更新
- 11. Swift - 確定使用開關按下哪個按鈕
- 12. 確定在Flask視圖中按下了哪個WTForms按鈕
- 13. 確定使用jQuery按下哪個按鈕
- 14. 確定在Tkinter中按下哪個按鈕?
- 15. Android小部件:如何確定哪個按鈕被點擊?
- 16. iPhone SDK:如何以編程方式確定哪個按鈕被按下?
- 17. Android:確定哪個按鈕被點擊給定該按鈕沒有在xml
- 18. 確定使用哪個提交按鈕?
- 19. Android - 如何在alertdialog中按下按鈕並按下按鈕是或否按鈕
- 20. 如何確定按下按鈕後當前在按鈕後面顯示哪個div
- 21. 確定在兩個UIAlertView中的一箇中按下了哪個按鈕
- 22. 如何知道android列表中的哪一行按下按鈕?
- 23. 確定哪個鍵被按下
- 24. 檢測按下了哪個按鈕?
- 25. 安卓:哪個按鈕被按下
- 26. 在ExpandableListView中按下哪個按鈕
- 27. 檢測按下哪個按鈕
- 28. 檢測哪個按鈕被按下
- 29. 在flowlayoutpanel中按下哪個按鈕?
- 30. Javascript/PHP onSubmit - 哪個按鈕被按下?