首页 > 其他分享 >Android按钮Button

Android按钮Button

时间:2024-10-19 20:49:40浏览次数:3  
标签:控件 单击 Button 事件 onClick 按钮 Android View

Button是程序用于和用户进行交互的一个重要控件。Button也是继承自TextView,既可以显示文本,又可以显示图片,二者在UI上的区别主要是 Button 控件有个按钮外观,提示用户单击。
在这里插入图片描述
图1 Button示意图
Button最主要的功能是通过单击来执行指定的操作,当用户单击Button后,Button会触发一个onClick事件,Android主要有以下三种监听并处理Button单击事件的方式。
1)在布局文件中指定onClick属性的方式设置单击事件。可以在布局文件中指定onClick属性的值来设置Button控件的单击事件,示例代码如下:

<Button
    android:id="@+id/button"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="92dp"
    android:layout_marginTop="95dp"
    android:text="Button"
    android:onClick="click"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

上述代码中,Button控件指定了onClick属性值为“click”,则在Activity中定义实现单击事件的方法名必须定义为“click”,与onClick属性的值(click)保持一致,代码如下:

public void click(View view) {
    //此次添加点击事件响应

}

2)使用匿名内部类的方式设置单击事件。在Activity中,可以使用匿名内部类的方式为Button设置单击事件,代码如下:

Button button = findViewById(R.id.button);

button.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View view) {
        //此次添加点击事件响应
    }
});

上述代码中,通过为Button控件设置setOnClickListener()方法实现对Button控件单击事件的监听。setOnClickListener()方法中传递的参数是一个匿名内部类。如果监听到按钮被单击,那么程序会调用匿名内部类中的onClick()方法实现Button控件的单击事件。
3)Activity实现OnClickListener接口的方式设置单击事件。将当前Activity实现View.OnClickListener接口,同样可以为Button控件设置单击事件,示例代码如下:

public class MainActivity extends AppCompatActivity implements View.OnClickListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button button = findViewById(R.id.button);

        button.setOnClickListener(this);
    }

    @Override
    public void onClick(View view) {
        //此次添加点击事件响应
    }
}

上述代码中,MainActivity通过实现View.OnClickListener接口中的onClick()方法来设置单击事件。需要注意的是,必须调用Button控件的setOnClickListener()方法设置单击监听事件,否则,Button控件的单击事件onClick()方法不会生效。
实现Button控件的单击事件的三种方式中,前两种方式适合界面上Button控件较少的情况,界面上Button控件较多时,建议使用第三种方式实现控件的单击事件。

做最简单的安卓入门教程,手把手视频、代码、答疑、教材全配齐;帮助每个想学习的人,学会安卓开发。
节选自《Android应用开发项目式教程》,机械工业出版社,2024年7月出版

在这里插入图片描述

标签:控件,单击,Button,事件,onClick,按钮,Android,View
From: https://blog.csdn.net/Lwjobs/article/details/143084048

相关文章

  • windows安装Android studio并运行显示"hello world"
    闲言本次流程的最终实现目的,正确安装AndroidStudio,并实现运行成功希望能帮到大家目录闲言安装前准备下载AndroidStudio安装新建项目第一次创建情况如果proxy未在创建新项目时出现运行创建虚拟机运行虚拟机碎语安装前准备下载AndroidStudio官网链接https://devel......
  • 在不丢失数据的情况下解锁锁定的 Android 手机的 4 种方法
    尽管您可以使用指纹解锁手机,但大多数智能手机都需要PIN码、图案或字母数字代码作为主密码。如果您有一段时间没有输入手机密码,很容易忘记。正是由于这个原因,即使您打开了指纹解锁,大多数智能手机也会让您每天至少输入一次PIN。即使采取了所有这些额外措施,您仍有可能忘记手机......
  • 【Bootstrap】bootstrap-table 的打印按钮功能正常但缺失图标
    问题描述在使用bootstrap-table的过程中,尽管打印功能可以正常使用,但是却不显示打印图标。原因分析缺失了font-awesome图标库。FontAwesome是一个非常流行的图标库,它包含了大量的可缩放矢量图标。这些图标可以被定制——大小、颜色、阴影以及任何可以用CSS完成的效果......
  • Android14———Launcher去除抽屉模式的实现,将所有app显示在桌面上
    1、首先需要增加一个标志flag,通过true或者false进行是否去除抽屉模式的表达。FeatureFlags.javapublicstaticfinalbooleanREMOVE_DRAWER=true;2、将allApp显示到桌面Workspace上LoaderTask.java先导包:importandroid.util.Pair;importjava.util.function.......
  • Android 13.0 Launcher3定制之首页时钟小部件字体大小修改
    1.前言在13.0的系统rom产品开发中,在一些Launcher3的定制化开发中,在对于一些小屏幕的产品开发中,在首页添加时钟小部件会显得字体有点小,所以为了整体布局美观就需要改动小部件的布局日期字体的大小来实现整体的布局美观效果,接下来来具体实现相关的功能具体效果图:2.Launcher......
  • 【Android学习】UI基础
    在Android开发中,用户界面(UserInterface,简称UI)是用户与应用交互的桥梁,UI设计的好坏直接影响用户的体验。所有的用户界面元素都是View和ViewGroup的对象构成的。View是绘制在屏幕上的用户能与之交互的一个对象。而ViewGroup则是一个用于存放其他View(和ViewGroup)对象的布局容器。......
  • Vue3 - 详细实现移动端H5网页调用摄像头拍照功能,微信公众号网页h5页面打开本地摄像头
    前言PC网站端,请访问这篇文章。在vue3手机移动端开发中,详解H5页面/微信公众号网页调用浏览器摄像头并拍照完整示例,在手机浏览器上开启摄像头并拍照上传服务器或保存到本地功能(实时预览使用图片临时路径或base64数据),切换转换前置摄像头与后置摄像头,vue3手机H5打开摄像......
  • Android Framework AMS(08)service组件分析-2(startService和StopService关键流程分析)
    该系列文章总纲链接:专题总纲目录AndroidFramework总纲本章关键点总结&说明:说明:上一章节主要解读应用层service组件启动的2种方式startService和bindService,以及从APP层到AMS调用之间的打通。本章节主要关注service组件启动方式的一种:startService启动方式,分析关键API......
  • Android Framework AMS(09)service组件分析-3(bindService和unbindService关键流程分析)
    该系列文章总纲链接:专题总纲目录AndroidFramework总纲本章关键点总结&说明:说明:上上一章节主要解读应用层service组件启动的2种方式startService和bindService,以及从APP层到AMS调用之间的打通。上一章节我们关注了service组件启动方式的一种:startService启动方式。本章......
  • Android OpenGL粒子特效
    在本篇,我们将开启一个新的项目,探索粒子的世界。粒子是一种基本的图形元素,它们通常被表示为一组点。通过巧妙地组合一些基础的物理效果,我们能够创造出许多令人惊叹的视觉效果。想象一下,我们可以模拟一个水滴从喷泉中喷出,然后优雅地落回地面的场景。同样,我们也能模拟出逼真的......