监听按钮点击事件的三种写法
1、匿名内部类实现监听事件
public class MainActivity extends Activity {
private Button button; //初始化一个按钮对象
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
button = (Button) findViewById(R.id.button1);
//找到xml文件中对应的Button控件引入此Activity
/*
* 监听事件通过匿名内部类来实现
*/
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//在此监听按钮点击事件的动作,并做出相应的操作
}
});
}
}
2、接口方式来实现监听事件
public class MainActivity extends Activity implements OnClickListener{
private Button button; //监听事件通过接口方式来实现
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button1);
/*
* 监听事件通过接口方式来实现
*/
button.setOnClickListener(this);//this表示访问当前类的接口的一个对象
}
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//在此监听按钮点击事件的动作,并做出相应的操作
}
}
3、独立类实现监听事件
public class MainActivity extends Activity {
private Button button;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.button1);
/*
* 监听事件通过独立类来实现
*/
button.setOnClickListener(new MyOnClickListener());
}
}
//独立类:MyOnClickListener
class MyOnClickListener implements OnClickListener{
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
//在此监听按钮点击事件的动作,并做出相应的操作
}
}