Android学习—Button的四种OnClick响应方法-成都快上网建站

Android学习—Button的四种OnClick响应方法

在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


本文标题:Android学习—Button的四种OnClick响应方法
转载源于:http://kswjz.com/article/ieopoc.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流