Button的四種Click響應方法匯總

字號:


    Button用得挺多的,在這整理了下它的事件處理方法,發(fā)現(xiàn)實現(xiàn)方法還不少,我比較喜歡第二種,你呢,最常用哪一種?
    實現(xiàn)一:
    代碼如下:
    Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
    bt_Demo.setOnClickListener(new OnClickListener()
    {
    @Override
    public void onClick(View v)
    {
    //響應Clicked事件
    //......
    }
    });
    實現(xiàn)二:
    代碼如下:
    Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
    bt_Demo.setOnClickListener(listener);
    private OnClickListener listener = new OnClickListener(){
    @Override
    public void onClick(View arg0) {
    // TODO Auto-generated method stub
    switch(arg0.getId()){
    case R.id.bt_Demo:
    //響應Clicked事件
    //......
    break;
    default:
    break;
    }
    }
    }
    實現(xiàn)三:
    代碼如下:
    Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
    bt_Demo.setOnClickListener(new ButtonListener());
    private class ButtonListener implements OnClickListener{
    @Override
    public void onClick(View arg0) {
    //響應Clicked事件
    //......
    }
    }
    實現(xiàn)四:
    代碼如下:
    //在Activity中直接OnClickListener接口:
    import android.view.View.OnClickListener;
    public class MyActivity extends Activity implements OnClickListener {
    @Override public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    //按紐
    Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
    bt_Demo.setOnClickListener(this);
    }
    //響應Click事件
    public void onClick(View v) {
    switch (v.getId()) {
    case R.id.bt_Demo:
    //響應Clicked事件
    //......
    break;
    default:
    break;
    }
    }
    }
    感謝這么全面的總結,雖然這些都知道,但是自己缺乏總結。