位置: 编程技术 - 正文

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年应纳税额抵减政策吗
  • 不小心开了发票
  • 关于330技术维护费
  • 用户风险是什么意思
  • 医保断缴多久后余额不能用
  • 包装物计入科目
  • 其他应付款需要做预算会计吗
  • 外地预缴工会其他经费计入什么科目?
  • 财产行为税税种
  • 分期收款销售的商品属于存货吗
  • 固定资产达到使用状态时发生的安装费用
  • 公户的利息收入账务处理咋处理
  • 计提折旧是什么账户
  • 其他应付款贷方增加
  • mac系统怎么添加网络映射
  • php数组函数实现机选双色球
  • 装修费预付款会计分录
  • 开展党建系列活动
  • 委托加工不提供原材料会计分录
  • 苏门答腊岛海岸线多少
  • 微信小程序实现灯泡开关效果
  • docker-p
  • 微信 php sdk
  • 注册资本认缴可以增加吗
  • pytorch自动编码器
  • sta翻译中文
  • mac配置flutter环境变量
  • 施工水电费账务处理流程
  • 金税盘无法登录410506怎么解决
  • 建筑工程拨款流程
  • 实发工资总额怎么算
  • 以房租入股股份怎么计算
  • mysqlbinlog命令详解
  • 织梦怎么调用当前栏目下的文章
  • mybatis拦截器执行顺序
  • 在ubuntu中安装win10
  • 认缴制注册资金不交可以吗
  • 单位结余资金该如何处理
  • 在零售环节征收消费税的是哪些
  • 应付账款的入账价值为未来偿还额
  • 出口货物用途
  • 材料采购和原材料和在途物资的区别
  • 办公室购花卉会计处理
  • 纳税调整怎么做
  • 固定资产的计提折旧方法有哪些
  • 报销差旅费属于付款凭证还是收款凭证
  • 残疾人保障金的工资按实发还是应发
  • 企业所得税收入是含税还是不含税
  • 管理费用明细科目设置和核算需要注意哪些问题
  • 对子公司的投资损失可以税前扣除吗
  • 最新职工福利费列支范围
  • mysql数据库高可用方案
  • Python MySQL进行数据库表变更和查询
  • mac系统10.10
  • win7系统IE浏览器版本
  • xp远程连接win7
  • 如何升级win
  • win8.1界面如何改为win7
  • linux cp命令怎么用
  • win10周年版
  • 电子书进不去系统原因
  • 菜单按钮是什么
  • 优化了一些已知问题是什么意思安不安装
  • unity3d初学者教程视频
  • 表格指定高度是多少
  • 手把手教你把币从交易所提到钱包
  • python 钉钉打卡定位
  • 企业获得的保险公司保险赔偿款收入
  • 内蒙古包头税务局客服电话
  • 耕地占用税减免税范围包括
  • 会计建账时一般需要哪几本账
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设