Button的4种Click回应方式汇总

Button用得挺多的,在这梳理了下它的恶性事件解决方式,发实际现方式还很多,我较为喜爱第2种,你呢,最常见哪种?

完成1:


拷贝编码
编码以下:

Button bt_Demo = (Button)findViewById(R.id.bt_Demo);
bt_Demo.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
//回应Clicked恶性事件
//......
}
});

完成2:


拷贝编码
编码以下:

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;
}
}
}

完成3:


拷贝编码
编码以下:

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恶性事件
//......
}
}

完成4:


拷贝编码
编码以下:

//在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;
}
}

谢谢这么全面的总结,尽管这些都了解,可是自身欠缺总结。