三种方法写监听事件


/***********************************三种方法写点击事件*************************************/
//得到控件
tv_title=(TextView) findViewById(R.id.tv1);
Btn1=(Button) findViewById(R.id.btn1);
//1直接实现
Btn1.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View arg0) {
Log.i("info", "按钮被点击了");
}
});

//2自己写一个内部类
class MyOnClickListener implements OnClickListener{

@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tv1:
Log.i("info", "标签被点击了");
break;
case R.id.btn1:
Log.i("info", "按钮被点击了");
break;
default:
break;
}
}}

//注册监听事件
Btn1.setOnClickListener(new MyOnClickListener());
tv_title.setOnClickListener(new MyOnClickListener());

/************************************/
//主类MainActivity需要实现OnClickListener接口
Btn1.setOnClickListener(this);//注册监听事件
tv_title.setOnClickListener(this);
}
//3实现接口 让主类去完成监听事件
@Override
public void onClick(View v) {

switch (v.getId()) {
case R.id.tv1:
Log.i("info", "标签被点击了");
break;
case R.id.btn1:
Log.i("info", "按钮被点击了");
break;
default:
break;
}

};

原文地址:https://www.cnblogs.com/wangfeng520/p/4997291.html