在之前博文中多次使用了点击事件的处理实现,有朋友就问了,发现了很多按钮的点击实现,但有很多博文中使用的实现方式有都不一样,到底是怎么回事。今天我们就汇总一下点击事件的实现方式。

点击事件的实现大致分为以下三种:
(1)Activity 实现接口方式实现点击事件(经常使用)
(2)自定义方法,使用配置文件android:onclick
(3)使用内部类方式实现
(4)使用匿名内部类实现介绍下几种点击事件的实现方式:
下面我们通过代码来简单演示下几种点击事件的实现方式:
(1)Activity 实现接口方式实现点击事件
/**
* Activity 实现接口方式实现点击事件
* Activity 实现 View.OnClickListener 实现 onClick(View view){} 方法
* 在 Activity 的 onCreate 方法中注册事件
*/
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
private Button btn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button);
btn.setOnClickListener(this);
}
public void onClick(View v) {
Toast.makeText(MainActivity.this,"实现接口方式",Toast.LENGTH_LONG).show();
}
}
(2)自定义方法,使用layout配置文件android:onclick
/**
* 使用配置文件方式实现点击事件
* 在layout中的配置文件中使用onClick 属性指定触发事件时的处理方法,
* 在 Activity 中提供一个同名的方法 格式为 public void XXX(View v){....}
*/
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void click(View v){
Toast.makeText(MainActivity.this,"自定义",Toast.LENGTH_LONG).show();
}
}
(3)使用内部类方式实现
/**
* 使用内部类方式实现点击事件
* 定义一个 View.OnClickListener 的实现类,实现 onClick 方法。
* 在 Activity 的 onCreate 方法中注册事件
*/
public class MainActivity extends AppCompatActivity {
private Button btn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button2);
btn.setOnClickListener(new Listener());
}
class Listener implements View.OnClickListener{
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,"内部类",Toast.LENGTH_LONG).show();
}
}
}
(4)使用匿名内部类实现
/**
* 使用匿名内部类方式实现点击事件
* 注册按钮单击事件时直接使用匿名内部类
*/
public class MainActivity extends AppCompatActivity {
private Button btn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.button3);
btn.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View v) {
Toast.makeText(MainActivity.this,"匿名内部类",Toast.LENGTH_LONG).show();
}
});
}
}
补充:
不同的组件来实现不同类型的点击事件,例如onItemClickListener,OnCheckedChangeListener,OnRatingBarChangeListener,OnMultiChoiceClickListener,OnDate/timeSetListener,OnScrollListener,OnChildClickListener,setOnTouchListener,OnPageChangeListener,OnMenuItemClickListener,OnEditorActionListener,OnEditorActionListener等等各种点击事件的处理形式。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# android
# 实现点击事件
# 点击事件
# 按钮点击事件
# Android中父View和子view的点击事件处理问题探讨
# Android中捕获TTextView文本中的链接点击事件方法
# 简单讲解Android开发中触摸和点击事件的相关编程方法
# Android如何防止多次点击事件
# Android中捕捉menu按键点击事件的方法
# Android使用RecyclerView实现自定义列表、点击事件以及下拉刷新
# Android开发在轮播图片上加入点击事件的方法
# Android点击事件派发机制源码分析
# Android开发-之监听button点击事件的多种方法
# Android给TextView添加点击事件的实现方法
# 配置文件
# 自定义
# 几种
# 博文
# 都不
# 有很多
# 三种
# 问了
# 提供一个
# 来实现
# 不同类型
# 单击
# 大家多多
# 格式为
# 发现了
# 分为以下
# 使用了
# class
# brush
# pre
相关文章:
C#如何序列化对象为XML XmlSerializer用法
网站专业制作公司有哪些,做一个公司网站要多少钱?
电商平台网站制作流程,电商网站如何制作?
如何快速搭建响应式可视化网站?
在线教育网站制作平台,山西立德教育官网?
青岛网站建设如何选择本地服务器?
免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?
招商网站制作流程,网站招商广告语?
如何用花生壳三步快速搭建专属网站?
制作网站的模板软件,网站怎么建设?
C#如何在一个XML文件中查找并替换文本内容
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
如何在景安服务器上快速搭建个人网站?
西安大型网站制作公司,西安招聘网站最好的是哪个?
网站制作公司排行榜,抖音怎样做个人官方网站
深圳网站制作平台,深圳市做网站好的公司有哪些?
建站之星3.0如何解决常见操作问题?
网站制作壁纸教程视频,电脑壁纸网站?
如何设置并定期更换建站之星安全管理员密码?
如何零基础在云服务器搭建WordPress站点?
英语简历制作免费网站推荐,如何将简历翻译成英文?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
已有域名能否直接搭建网站?
网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?
非常酷的网站设计制作软件,酷培ai教育官方网站?
IOS倒计时设置UIButton标题title的抖动问题
如何解决VPS建站LNMP环境配置常见问题?
*服务器网站为何频现安全漏洞?
移民网站制作流程,怎么看加拿大移民官网?
如何在Golang中指定模块版本_使用go.mod控制版本号
如何用AWS免费套餐快速搭建高效网站?
C#怎么使用委托和事件 C# delegate与event编程方法
实现虚拟支付需哪些建站技术支撑?
黑客如何通过漏洞一步步攻陷网站服务器?
儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?
如何在万网自助建站中设置域名及备案?
制作网站公司那家好,网络公司是做什么的?
相册网站制作软件,图片上的网址怎么复制?
阿里云高弹*务器配置方案|支持分布式架构与多节点部署
宝塔新建站点为何无法访问?如何排查?
山东云建站价格为何差异显著?
如何高效配置IIS服务器搭建网站?
建站主机如何选?高性价比方案全解析
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
建站主机是否属于云主机类型?
广平建站公司哪家专业可靠?如何选择?
建设网站制作价格,怎样建立自己的公司网站?
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
*请认真填写需求信息,我们会在24小时内与您取得联系。