位置: 编程技术 - 正文

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)

  • 退多缴纳的所得税 现金流如何处理
  • 个税扣除方法叫什么
  • 增值税的附加税有几个
  • 附加税减半征收的条件
  • 什么情况下核定征收转为查账征收
  • 企业筹集资金的最常见及最主要的方式是()
  • 油补是福利费还是工资
  • 公积金需要每月缴纳吗
  • 工伤事故赔偿项目表
  • 进口转卖业务
  • 购进财务软件折旧怎么算
  • 工程款预付账款的账务处理
  • 研发费用加计扣除新税收政策2023
  • 进货没有开具发票能退吗
  • 何为独立核算
  • 咨询服务费属于什么会计科目
  • 广告公司广告费会计分录
  • 开票系统里的开户行可以更改吗
  • 国家税务局通用定额发票还能用吗
  • 开发企业售楼处工作内容
  • 工商局打印公司章程介绍信
  • 油漆的消费税
  • 收到上年度企业所得税退税款
  • 个人出租住宅需要交哪些税
  • 厂区绿化工程计入什么科目
  • PHP:session_id()的用法_Session函数
  • 预收房租需要缴纳个税么
  • PHP:pg_result_error_field()的用法_PostgreSQL函数
  • mcshield.exe是什么进程
  • 麦克米伦anki
  • 免施工许可证
  • php获取文件内容
  • 企业所得税法定税率是多少
  • Css中的color属性用于设置html元素的背景颜色
  • vgchange命令
  • 结转增值税的账务处理
  • 残保金工资总额是计提还是实发
  • 出售子公司股权不丧失控制权
  • 应收利息的会计处理方法
  • 矿山征收
  • 会引起所有者权益总额变动的是
  • 自然人所属税务机关怎么选
  • 公司减持股份是利好还是利空
  • 帐载金额
  • 什么是简易征收?其公式是什么?
  • 酒店营业成本预算
  • 外购产品捐赠
  • mysql常见错误
  • 发票先认证后入账怎么做账
  • 财务费用的核算内容有哪些
  • 实收资本会计处理方法
  • 去年的管理费用多做了今年怎样调账
  • 分公司分摊比例
  • 公司报销给个人的会计分录
  • 资金结余率怎么算
  • 签劳动合同的员工有哪些
  • 开了发票就要交税吗?
  • 承兑汇票可以买卖吗?
  • 以前年度的银行手续费发票
  • 进口车购置税多少个点
  • mysql5.5.62安装教程图解
  • mac怎么批量删除qq好友
  • kcleaner是什么文件夹
  • cocos2d-x 3.2 在window平台vs2012下解决中文乱码问题
  • adobe骨骼动画
  • 百度关键词设置
  • jquery 插件写法
  • 原生js实现promise.all
  • jquery ui dialog替代confirm实例分析
  • 用js做表单验证
  • Javascript中Array.prototype.map()详解
  • jquery图片
  • androidsdk的计算机
  • 销售农药化肥的经营范围
  • 个人所得税申诉有什么后果
  • 国家规定的免税项目
  • 黄金消费税如何缴纳
  • 中山市地方税务局官网
  • 出口退税申报系统反馈读入
  • 请问到税务局办里退税都需要什么手续
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设