Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 605|回复: 0

[默认分类] android Button 监听的几种方式

[复制链接]
  • TA的每日心情
    开心
    2021-12-13 21:45
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    发表于 2018-5-28 15:53:31 | 显示全部楼层 |阅读模式


    android button控件目前主要有如下几种监听方式:

      一个button控件对应一个监听:
    1.         Button buttontest;
    2.         buttontest = (Button) findViewById(R.id.button1);
    3.         buttontest.setOnClickListener(new View.OnClickListener() {
    4.                        
    5.                         @Override
    6.                         public void onClick(View v) {
    7.                                 // TODO Auto-generated method stub
    8.                                 Log.i("TEST", "button onClick");
    9.                         }
    10.                 });
    复制代码
      多个button对应一个监听1:
    1. start = (Button) findViewById(R.id.button1);
    2. stop = (Button) findViewById(R.id.button2);
    3. start.setOnClickListener(mylistener );
    4. stop.setOnClickListener(mylistener );
    5. View.OnClickListener mylistener = new View.OnClickListener() {
    6.                
    7.                 @Override
    8.                 public void onClick(View v) {
    9.                         switch (v.getId()) {
    10.                         case R.id.button1:
    11.                                 Log.d(TAG, "Start to recorder video\n");
    12.                                 start_recorde();
    13.                                 break;
    14.                         case R.id.button2:
    15.                                 Log.d(TAG, "Stop to recorder video\n");
    16.                                 stop_recorde();
    17.                                 break;
    18.                         default:
    19.                                 break;
    20.                         }       
    21.                 }
    22.         };
    复制代码
      多个button对应一个监听2:
    1. public class MainActivity extends Activity implements View.OnClickListener{
    2.         //界面元素
    3.         private Button start;
    4.         private Button stop;
    5.        
    6.     @Override
    7.     public void onCreate(Bundle savedInstanceState) {
    8.         super.onCreate(savedInstanceState);
    9.         setContentView(R.layout.activity_main);
    10.         
    11.         start = (Button) findViewById(R.id.button1);
    12.         stop = (Button) findViewById(R.id.button2);
    13.         start.setOnClickListener(this);
    14.         stop.setOnClickListener(this);
    15.     }
    16.     @Override
    17.     public boolean onCreateOptionsMenu(Menu menu) {
    18.         getMenuInflater().inflate(R.menu.activity_main, menu);
    19.         return true;
    20.     }
    21.         @Override
    22.         public void onClick(View v) {
    23.                 switch (v.getId()) {
    24.                 case R.id.button1:
    25.                         Log.d(TAG, "Start to recorder video\n");
    26.                         break;
    27.                 case R.id.button2:
    28.                         Log.d(TAG, "Stop to recorder video\n");
    29.                         break;
    30.                 default:
    31.                         break;
    32.                 }
    33.         }
    34.                
    35. }
    复制代码
      xml中绑定监听:
    1. <Button
    2. android:id="@+id/button1"
    3. android:layout_height="wrap_content"         
    4. android:layout_width="wrap_content"
    5. android:onClick="mybuttonlistener">
    6. </Button>
    复制代码
    对应java代码如下:
    1. Button btn = (Button) findViewById(R.id.button1);
    2. public void mybuttonlistener(View target){
    3.     //do something5     
    4. }
    复制代码
    从个人角度来讲,不推荐使用第四种实现方式。



      
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-20 18:08 , Processed in 0.412764 second(s), 46 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表