在Android或Java开发中,对于button的OnClickListener有下面四种实现方式,可以根据需要选择合适的用法。

方法一:

适合场景:通用

 Button bt_Demo = (Button)findViewById(R.id.bt_Demo); bt_Demo.setOnClickListener(new OnClickListener() {  @Override  public void onClick(View v)  {   //响应Clicked事件   //......  } });

方法二:

适合场景:适合有多个button或者button数组时使用

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或者button数组时使用,这跟方法二其实差别不大

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事件    //......  }   }

方法四:

适合场景:适合界面上有不同类型的控件,这种方式将所有控件的onclick方法在一个方法里面实现,看起来比较简洁

  //在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;       }    }     }

 参考:http://blog.csdn.net/xcl168/article/details/14452807

更多相关文章

  1. Android(安卓)中添加水平线和垂直线方法总结
  2. Android(安卓)libmp3lame详解
  3. Android之DatePicker和TimePicker实现以及自定义大小
  4. Android中使用代码截图的各种方法总结
  5. Andoid自动判断输入是电话,网址或者Email的方法--Linkify
  6. android之反射创建一个实例:构造方法带参和不带参
  7. Android——使用TabLayout+ViewPager实现顶部导航栏
  8. Android开发错误:Error:” ” is not translated in “en” (Engl
  9. ListViewAnimations 源码浅析

随机推荐

  1. Android如何调用第三方SO库
  2. Android(安卓)官方博客 - Android应用程
  3. 修改Android系统属性SystemProperties.se
  4. Android(安卓)6.0之后的动态权限
  5. Android消息处理机制(二)
  6. android TextView多行文本(超过3行)使用e
  7. 【Android】ListView与Button的共存问题
  8. ListActivity中android:id="@+id/android
  9. Android(安卓)可以自定义速度的跑马灯效
  10. Android的简介