2012-02-02 84 views
1

不必为每个按钮调用单独的方法,是否可以只使用一种方法并检查它是否被它的ID点击过的按钮?几个按钮的一种方法?

我用简单的方式像android:onClick="activateButtons"

public void activateButtons(View v) 
{ 
    if(?? == btn_1) 
    { 
    Code for button with ID = btn_1 
    } 
    if(?? == btn_1) 
    { 
    Code for button with ID = btn_2 
    } 
} 

回答

2

你可以做,如果你标记一个ID按钮。在xml文件中设置android:id="@+id/yourbuttonid"。然后在onClick方法中执行if(v.getId() == R.id.yourbuttonid)

+0

尼斯代码!谢谢! – 2012-02-02 15:19:04

1

是的,这是可能的。您可以为按钮指定特定的id(例如:button1),然后在activateButtons(onclick方法)中调用v.getId()以检查它是否等于R.id.button1,然后在那里执行操作。

干杯,

里奇

1
public void onClickKeyPad(View view) 
{ 
    EditText text = (EditText)findViewById(R.id.text_password); 

    switch(view.getId()) 
    { 
    case R.id.button_0: 
     text.setText(text.getText() + "0"); 
    break; 
    case R.id.button_1: 
     text.setText(text.getText() + "1"); 
    break; 

    case R.id.button_cancel: 
     finish(); 
    break; 

    default: 
    break; 
    } 
} 
+0

不错的代码!谢谢! – 2012-02-02 15:18:46

相关问题