位置: 编程技术 - 正文

Button.setOnClickListener(OnClickListener l) 原理

编辑:rootadmin

推荐整理分享Button.setOnClickListener(OnClickListener l) 原理,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

android,java使用Button 可能都会监听之 当其被点击 就会有函数负责回调 那么其到底是怎么实现的呢?

今天要做的就是摸清楚之 为了减少不必要的麻烦 打算extends EditText 并在其上设立监听器

[代码 步骤]

Button.setOnClickListener(OnClickListener l) 原理

1. 定义Edit2Text 且extends EditText

public class Edit2Text extends EditText { OnTextChangedListener changedListener; TextWatcher tWatcher; } 复制代码

2. 定义其上的监听器:OnTextChangedListener 并定义函数:onChanged() 用于执行具体回调

public static interface OnTextChangedListener { public void onChanged(Edit2Text e2t, String text); } 复制代码需要注意的 这几行代码的修饰关键字: 1. static :使其能够脱离Edit2Text而存在 2. interface : 使其自动填充其内部函数 3. “void onChanged(Edit2Text e2t, String text)” 中的第一个参数e2t 用于做分别 具体奥妙 后面再细说 复制代码3. 设定监听器public void setOnChangedListener(OnTextChangedListener l){ changedListener = l; } 复制代码

4. 定义TextWatcher 当字符内容改变 通知监听器

* 定义TextWatcher'

tWatcher = new TextWatcher(){ @Override public void afterTextChanged(Editable s) { // TODO Auto-generated method stub . } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub updateText(s.toString()); } }; this.addTextChangedListener(tWatcher); 复制代码* 通知监听器private void updateText(String s){ changedListener.onChanged(this, s); } 复制代码5. 如何使用public class Edit2TextTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); . setContentView(R.layout.main); Edit2Text e2t = new Edit2Text(this); setContentView(e2t); e2t.setOnChangedListener(new Edit2Text.OnTextChangedListener(){ @Override public void onChanged(Edit2Text e2t, String text) { // TODO Auto-generated method stub Log.d("TAG","[String:]"&#;text); } }); } } 复制代码* Log 信息:Java代码 收藏代码. D/dalvikvm( ): GC freed objects / bytes in m . D/TAG ( ): [String:]i am . D/TAG ( ): [String:]i am . D/TAG ( ): [String:]i am e . D/TAG ( ): [String:]i am ed . D/TAG ( ): [String:]i am edi . D/TAG ( ): [String:]i am edit . D/TAG ( ): [String:]i am edit2 . D/TAG ( ): [String:]i am edit2t . D/TAG ( ): [String:]i am edit2te . D/TAG ( ): [String:]i am edit2tex . D/TAG ( ): [String:]i am edit2text . D/TAG ( ): [String:]i am edit2text, . D/TAG ( ): [String:]i am edit2text, . D/TAG ( ): [String:]i am edit2text, h . D/TAG ( ): [String:]i am edit2text, he . D/TAG ( ): [String:]i am edit2text, hel . D/TAG ( ): [String:]i am edit2text, hell . D/TAG ( ): [String:]i am edit2text, hello . D/TAG ( ): [String:]i am edit2text, hello!

Android 安卓 API 兼容 @SuppressLint(NewApi)if(Build.VERSION.SDK_INT=Build.VERSION_CODES.Honeycomb){//如果api版本大于}else{//如果api版本小于}Android版本名和APILevel关系全称Android的版本Android版

百度定位SDK5.x版本开发指南修正说明 百度开发者中心有给出5.x版本(目前最新是5.2)开发指导说明,但无法成功定位。除参考官网指导说明外,

android自定义控件之滚动广告条 在一些电子商务网站上经常能够看到一些滚动的广告条,许多软件在首次使用时也有类似的广告条,如图:其实在github上有实现这种效果的控件,不过

标签: Button.setOnClickListener(OnClickListener l) 原理

本文链接地址:https://www.jiuchutong.com/biancheng/382234.html 转载请保留说明!

上一篇:Android技术——Intent Filter(android技术总结)

下一篇:Android 安卓 API 兼容(android 安卓开发 openssl)

  • 计提个税会计科目怎么做
  • 财务软件购买税点多少钱
  • 单位产品销售税金
  • 一般纳税人如何注销
  • 注销股本对所有股票影响
  • 退回资本金要交税吗
  • 委托开发的定义
  • 结转抵扣
  • 长期股权投资的账务处理
  • 出纳日常工作内容总结
  • 建筑业异地预缴税款怎么抵扣
  • 递延资产是长期待摊费用吗
  • 内部部门汇缴上级财务
  • 弥补以前年度亏损税局会查吗
  • 监督机关包括哪些
  • 补提以前年度个税会计分录
  • 增值税专用发票的税率是多少啊
  • 发票对方作废了,客户还可以认证么
  • 退税显示未完成怎么处理
  • 公务费用扣除标准 通讯补贴怎么算
  • 仅提供发票
  • 折价退回的会计处理
  • 卷烟消费税税率表
  • 认证费计入什么科目
  • 科技开发属于什么产品
  • macbook自带的游戏
  • 账户禁用无法登录怎么办
  • php数组函数实现机选双色球
  • php留言板的简单编写
  • system占用cpu过高怎么解决
  • 苹果 macOS 13.3 开发者预览版 Beta 2 发布
  • linux安装tk
  • 返点收入怎么会计分录
  • 最薄的电视机是多厚
  • zendframework3中文手册
  • 收到银行承兑汇票的账务处理
  • 可视化大屏的几种模式
  • ant design vue 表单
  • PHP面向对象程序设计调研
  • 可以抵扣的项目有哪些
  • php qrcode生成二维码
  • php访问路径
  • 什么情况印花税
  • 个人个税汇算清缴怎么做
  • 所得税申报资产总额平均值
  • python 复选框怎么设置
  • 政府购买服务交流发言材料
  • 没有发票的公账报销了怎么入账
  • 企业所得税的营业成本怎么填
  • 记账软件多少钱一套
  • 购买土地的流程
  • 银行承兑汇票以公允价值计量
  • 工业用电交税怎么算
  • 有哪些不动产
  • 消防设施 房产税
  • 在建工程领用物资进项税
  • 企业所得税必须预缴吗
  • mysql连接查询和子查询效率
  • 班班通一直正在启动什么原因
  • win8系统 Cisco VPN 442错误怎么办?解决方法介绍
  • 无法安装osx
  • centos 查看文件夹
  • windows8.1开机
  • linux 中断 处理
  • nod32kui.exe - nod32kui是什么进程 作用是什么
  • node.js deno
  • Unity3d OnApplicationPause与OnApplicationFocus 判断游戏暂停还是重新启动
  • unity 技术
  • unity图集
  • js内存条
  • 虚拟主机 推荐
  • 简单介绍linux系统有哪些主要特点?
  • python开发软件教程
  • 简单的横向棱纹魔杖
  • android自定义listview
  • 代扣社保代扣公式是什么
  • 对税务工作者的赞美
  • 基层税收工作的建议意见
  • 外贸公司如何开发客户
  • 乾升黄酒好吗值得买吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设