Button控件表示按钮,通过用户点击来执行操作,当Button控件被点击时会触发点击效果。

一、Button按钮控件设置点击事件

为Button按钮控件设置点击事件的方式主要有三种方式:

(1)在布局文件中在按钮中添加onClick属性

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:app="http://schemas.android.com/apk/res-auto"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"tools:context=".ButtonThree"><Buttonandroid:id="@+id/btn3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:onClick="Click"android:text="点击按钮"/></LinearLayout>

在布局文件中添加了onClik的属性,我们可以在活动中定义专门的方法来实现Button控件的点击事件。注意定义的方法名必须与布局文件中定义的属性名一值。

package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class Fragment extends AppCompatActivity {
private Button btn;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.fragment);btn = (Button) findViewById(R.id.btn);}public void  click(View view){btn.setText("你点了我你要对我负责");Toast.makeText(Fragment.this, "哈哈哈,你点了我!", Toast.LENGTH_SHORT).show();}
}

(2)使用匿名内部类的方式设置点击事件。

package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class Fragment extends AppCompatActivity {
private Button btn;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.fragment);btn = (Button) findViewById(R.id.btn);btn.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {btn.setText("你点了我你要对我负责");Toast.makeText(Fragment.this, "哈哈哈,你点了我!", Toast.LENGTH_SHORT).show();}});}
}

(3)活动中实现OnClickListener接口的方式设置点击事件。

package com.example.myapplication;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class Fragment extends AppCompatActivity implements View.OnClickListener{
private Button btn;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.fragment);btn = (Button) findViewById(R.id.btn);btn.setOnClickListener(this); //设置Button控件的点击监听事件}@Overridepublic void onClick(View v) {btn.setText("被点击了");Toast.makeText(Fragment.this, "Toast我是轻量级的消息输出", Toast.LENGTH_SHORT).show();}
}

Android控件之Button相关推荐

  1. Android常用控件之Button与ImageButton

    掌握Android常用控件之Button与ImageButton的用法,熟悉它们的常用属性. 1.相关代码: activity_main.xml代码: <?xml version="1 ...

  2. Android控件美化Shape

    Android控件美化Shape你会用吗?   -- 未审核 编辑文档  如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android1 ...

  3. android控件属性

    android控件属性 控件属性: android属性 Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料, 第一类:属性值为true或false an ...

  4. Android控件系列之RadioButtonRadioGroup

    2019独角兽企业重金招聘Python工程师标准>>> 学习目的: 1.掌握在Android中如何建立RadioGroup和RadioButton 2.掌握RadioGroup的常用 ...

  5. 最简单也最难——如何获取到Android控件的高度,获取android控件

    最简单也最难--如何获取到Android控件的高度,获取android控件 问题 如何获取一个控件的长和高,相信很多朋友第一眼看见这个问题都会觉得很简单,直接在onCreate里面调用getWidth ...

  6. android控件使用大全,Android常见控件使用详解

    本文实例为大家分享了六种Android常见控件的使用方法,供大家参考,具体内容如下 1.TextView 主要用于界面上显示一段文本信息 2.Button 用于和用户交互的一个按钮控件 //为Butt ...

  7. android让一个控件跟上面控件对其,学个明白--Android控件架构

    Android控件架构 1.什么是View? View是Android中所有控件的基类.View是界面层的控件的一种抽象,它代表了一个控件.在Android中每个控件都会在界面中占得一块矩形的区域.在 ...

  8. android support v4 viewstub,Android 控件ViewStub

    Android ViewStub 01. 简介 A ViewStub is an invisible, zero-sized View that can be used to lazily infla ...

  9. android电子书控件,Android控件大全.pdf

    Android控件大全 Android 中常见控件的介绍和使用 1 TextView 文本框 1.1 TextView 类的结构 TextView 是用于显示字符串的组件,对于用户来说就是屏幕中一块用 ...

  10. Android美化插件,Android控件美化Shape

    Android控件美化Shape你会用吗?   -- 未审核 编辑文档 如果你对Android系统自带的UI控件感觉不够满意,可以尝试下自定义控件,我们就以Button为例,很早以前Android12 ...

最新文章

  1. c3074 无法使用带圆括号的_小学生常见易考标点符号使用方法及练习(含答案)...
  2. python操作redis--------------数据库增删改查
  3. 迷宫问题---递归解决
  4. PL/SQL面向过程语言
  5. 5.3 tensorflow2实现梯度下降法完成广告投入销售额预测——python实战
  6. 8.Linux 高性能服务器编程 --- 高性能服务器程序框架
  7. 2023天津大学土木水利专业考研成功经验分享
  8. C++程序设计-第2周结构体应用
  9. Unity游戏开发背景知识
  10. 如何在php网站上插入站长统计,如何为自己的Wordpress网站添加站长统计代码 | 泰泰博客...
  11. Java的面向对象 -- 继承
  12. 关于Chrome浏览器设置启用Flash插件
  13. win10激活工具---KMSAutoNet
  14. Gradle For Android(三)Gradle优化与灵活的使用技巧
  15. 《JavaScript DOM 编程艺术》读书笔记
  16. 数据库原理之重要语法
  17. js中唤醒弹框的3种方式
  18. Redis如何避免数据丢失?
  19. 我的第一篇软文,悼念下女工程师的经历
  20. w7系统之家系统下载

热门文章

  1. DEDE源码分析与学习之三: member/archives_*.php文件解读
  2. C/C++编程:trivial和non-trivial
  3. java stringbuilder 构造函数_java---StringBuilder类的用法(转载)
  4. Mongodb释放内存
  5. 计算机属性资源管理器已停止工作,经常出现“资源管理器已停止工作”怎么办的完美解决办法...
  6. Linux权限的理解
  7. Tic Tac Toe
  8. ESX通过命令行重启虚拟机
  9. Java进阶篇 设计模式之十四 ----- 总结篇
  10. 督查督办系统作用是什么