Android Button点击事件的四种实现方法

发布时间 - 2026-01-11 02:24:18    点击率:

Android中Button四种点击事件实现方式,具体内容如下

1.Xml添加监听属性,这里添加的doClick。

<Button
    android:id="@+id/bt1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="doClick"
    android:text="XML添加doClick"
    android:layout_above="@+id/bt2"
    android:layout_marginBottom="47dp"
    />
public void doClick(View view) {
    switch (view.getId()) {
      case R.id.bt1:
        Toast.makeText(MainActivity.this, "第一种点击事件:Xml添加doClick", Toast.LENGTH_SHORT).show();
        break;

    }

  }

在Activity中添加doClick实现方法。Activity中实现的方法要和XML添加的属性名相同,不建议实际开发中使用。

2.匿名内部类方式实现。

Button bt2 = (Button) findViewById(R.id.bt2);
    bt2.setOnClickListener(new View.OnClickListener() {
       @Override
       public void onClick(View v) {
         Toast.makeText(MainActivity.this, "第二种点击事件:匿名内部类", Toast.LENGTH_SHORT).show();
       }
     });

3.自定义点击事件实现。

Button bt3 = (Button) findViewById(R.id.bt3);
     bt3.setOnClickListener(new MyListener());
class MyListener implements View.OnClickListener {
  @Override
  public void onClick(View v) {
    Toast.makeText(MainActivity.this, "第三种方法:自定义点击事件", Toast.LENGTH_SHORT).show();
  }
}

4.Activity继承View.OnClickListener,由Activity实现OnClick(View view)方法。

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
 Button bt4=(Button)findViewById(R.id.bt4);
  bt4.setOnClickListener(this);
}

@Override
  public void onClick(View v) {
    switch (v.getId()) {
      case R.id.bt4:
        Toast.makeText(MainActivity.this,
            "第四种点击事件:Activity继承View.OnClickListener,由Activity实现OnClick(View view)方法",
            Toast.LENGTH_SHORT).show();
    }
  }
}

备注:Button数量不多的情况下推荐使用第二种,匿名内部类的方式实现;反之则推荐使用第四种,Activity继承View.OnClickListener实现。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Android  # Button  # 点击事件  # Android开发设置RadioButton点击效果的方法  # Android 点击ImageButton时有“按下”的效果的实现  # Android悬浮按钮点击返回顶部FloatingActionButton  # Android Button按钮的四种点击事件  # Android开发-之监听button点击事件的多种方法  # Android 自定义Button控件实现按钮点击变色  # Android中button点击后字体的变色效果  # Android自定义button点击效果的两种方式  # Android开发之创建可点击的Button实现方法  # Android实现点击Button产生水波纹效果  # 推荐使用  # 自定义  # 第二种  # 第四种  # 不多  # 种方法  # 四种  # 第一种  # 具体内容  # 大家多多  # 情况下  # XML  # view  # layout_above  # layout_marginBottom  # onClick  # text 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  如何快速搭建虚拟主机网站?新手必看指南  Android Socket接口实现即时通讯实例代码  公司网站制作价格怎么算,公司办个官网需要多少钱?  简单实现Android验证码  浅谈javascript alert和confirm的美化  Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】  Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复  如何在云虚拟主机上快速搭建个人网站?  如何在Windows虚拟主机上快速搭建网站?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  Linux网络带宽限制_tc配置实践解析【教程】  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  如何获取免费开源的自助建站系统源码?  打开php文件提示内存不足_怎么调整php内存限制【解决方案】  如何用虚拟主机快速搭建网站?详细步骤解析  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  JavaScript如何实现路由_前端路由原理是什么  Python面向对象测试方法_mock解析【教程】  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Laravel Eloquent:优雅地将关联模型字段扁平化到主模型中  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  高防网站服务器:DDoS防御与BGP线路的AI智能防护方案  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  利用JavaScript实现拖拽改变元素大小  高防服务器:AI智能防御DDoS攻击与数据安全保障  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程  html5的keygen标签为什么废弃_替代方案说明【解答】  javascript中数组(Array)对象和字符串(String)对象的常用方法总结  JavaScript Ajax实现异步通信  如何制作一个表白网站视频,关于勇敢表白的小标题?  香港服务器网站卡顿?如何解决网络延迟与负载问题?  如何在云主机上快速搭建多站点网站?  Laravel怎么实现模型属性转换Casting_Laravel自动将JSON字段转为数组【技巧】  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  详解Android中Activity的四大启动模式实验简述  JS碰撞运动实现方法详解  标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?  EditPlus中的正则表达式实战(5)  网站优化排名时,需要考虑哪些问题呢?  香港服务器部署网站为何提示未备案?  如何快速建站并高效导出源代码?  Laravel Docker环境搭建教程_Laravel Sail使用指南  中山网站推广排名,中山信息港登录入口?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?