button用得挺多的,在这整理了下它的事件处理方法,发现实现方法还不少,我比较喜欢第二种,你呢,最常用哪一种?
实现一:
代码如下:
button bt_demo = (button)findviewbyid(r.id.bt_demo);
bt_demo.setonclicklistener(new onclicklistener()
{
@override
public void onclick(view v)
{
//响应clicked事件
//......
}
});
实现二:
代码如下:
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;
}
}
}
实现三:
代码如下:
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事件
//......
}
}
实现四:
代码如下:
//在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;
}
}
}
感谢这么全面的总结,虽然这些都知道,但是自己缺乏总结。