1、OnClickListener 监听Button,TextView等控件,当这些控件被点击时,响应相应的事件,通过onClick()方法实现具体的响应
2、实现的三种方式 (1)匿名内部类 实现形式:
button.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { // TODO Auto-generated method stub System.out.println("匿名内部类!"); } });用于控件较少的情况,在这种情况下不需要单独创建一个OnClickListener类
(2)通过外部类实现 实现形式:
class MyOnClickListener implements OnClickListener{ @Override //父类方法:让所有点击按钮事件做出同样的动作 public void onClick(View v) { // TODO Auto-generated method stub Toast.makeText(MainActivity.this, "外部类", Toast.LENGTH_SHORT).show(); } } button1.setOnClickListener(new MyOnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub super.onClick(v); Toast.makeText(MainActivity.this, "点击Button1", Toast.LENGTH_SHORT).show(); } }); button2.setOnClickListener(new MyOnClickListener(){ @Override public void onClick(View v) { // TODO Auto-generated method stub super.onClick(v); Toast.makeText(MainActivity.this, "点击Button2", Toast.LENGTH_SHORT).show(); } });这种方式一般用得比较少
(3)通过接口实现 实现形式:
public class MainActivity extends Activity implements OnClickListener{ button.setOnClickListener(this); public void onClick(View v) { // TODO Auto-generated method stub switch(v.getId()){ case R.id.xx: ... ... } } }这种方式一般用于控件较多的情况,通过switch语句,使不同的按钮,响应不同的方式
