Button的四种Click响应方法

Button用得挺多的,在这整理了下它的事件处理方法,发现实现方法还不少,我比较喜欢第二种,你呢,最常用哪一种?

实现一:

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

实现二:

复制代码
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 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事件
                //......
        }        
    }
复制代码

实现四:

复制代码
  //在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

 

感谢这么全面的总结,虽然这些都知道,但是自己缺乏总结。

posted @   似水流云  阅读(5097)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示