关于在Android中添加事件监听器的方法

一.匿名内部类

1.先找到那个控件(初始化)

private Button bt1;  //onCreate方法外

bt1 = (Button)findViewById(R.id.button1);

 

2.设置事件监听器

bt1.setOnClickListener(new OnClickListener(){

      public void onClick(View v){

      System.out.println("我的按钮被点击了");

  }

});

 

 

一.外部类监听点击事件

1.先找到那个控件(初始化)

private Button bt2;  //onCreate方法外

bt2 = (Button)findViewById(R.id.button2);

 

2.设置事件监听器

bt2.setOnClickListener(new MyOnClickListener(){

      public void onClick(View v){

      super.onClick(v);   //执行父类的onClick

      System.out.println("我的按钮被点击了");  //执行子类的onClick

  }

});

 

3.在另一个类中写父类的onClick方法

class MyOnClickListener implements OnClickListener{

      public void onClick(View v){

      v.setAlpha(0.5);  //设置透明的0.5

  }

}

//OnClickListener是一个接口

 

4.点击按钮后会执行服父类的onClick方法和子类的onClick方法,可以让多个按钮都执行相同的父类onClick方法

 

 

三.通过实现一个接口的方式实现监听事件

1.先找到那个控件(初始化)

private Button bt3;  //onCreate方法外

bt3 = (Button)findViewById(R.id.button3);

 

2.设置事件监听器

bt3.setOnClickListener(this);

 

3.让MainActivity.java类实现一个接口

public class MainActivity extends Activity implements OnClickListener{

 

}

 

4.在onCreate方法外实现这个接口的要求实现的方法

public void onClick(View v){

  System.out.println("第三种方法实现");  

}

 

注意:

如果是多个控件都要设置事件监听器,那么就要用第三种实现一个接口来实现监听的方法,只需要一个onClick方法,在重写的onClick方法中再用switch来管理事件的触发,每个case都对应一个控件的id。

 

posted @ 2016-07-27 22:39  杭者  阅读(9000)  评论(0编辑  收藏  举报