位置: 编程技术 - 正文

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)

  • 运输发票税率是9
  • 采购无发票怎么处理
  • 稿费的个人所得税税率是多少
  • 土地增值税二次清算规定
  • 统驭科目的作用
  • 技术转让所得的税收优惠
  • 贷款利息进项税额转出
  • 调整以前年度销售费用会计分录
  • 发工资四舍五入可以吗
  • 业务有提成个税怎么扣
  • 税后工资反推税前工资计算方法
  • 城市创建税务人在行动
  • 应交增值税最后到哪了
  • 如何界定企业所得税的不征税收入与应税收入
  • 季报如何填企业信息
  • 在会计实务中财务报表附注的披露方法不包括
  • 消耗性生物资产与生产性生物资产的区别
  • 外包食堂需要什么资质
  • 亏损企业是否可以上成长板
  • 给别人代付
  • 什么情况下要交消费税
  • 增值税发票复印件
  • 购买的无形资产入账价值
  • 个税经营所得申报怎么更正
  • 你肯定不知道的11个狗狗冷知识
  • 为什么win7系统用不了谷歌浏览器了
  • php预定义常量要使用define函数进行定义
  • 会计科目在建工程有金额要求吗
  • 一般纳税人取得普票会计分录
  • vue中如何使用weboffice
  • PHP:pg_field_is_null()的用法_PostgreSQL函数
  • 存货按实际成本计价是指每种存货的收发结存
  • 资本化的后续支出包括哪些项目
  • nodejs应用领域
  • 圆顶山遗址
  • 固定资产清查盘点报告模板
  • 递延所得税资产和负债怎么计算
  • vue运行报错
  • thinkphp3.x连接mysql数据库的方法(具体操作步骤)
  • vue3+ts+vite
  • Using Visual Leak Detector
  • 商贸公司库存怎么盘点准确一点儿
  • 工程发票需要备注吗
  • 个人所得税减免项目有哪些
  • 企业不交所得税的情况
  • 外贸进项税额怎么算
  • 个人独资企业要交哪些税
  • 怎么才能获得音乐
  • 收到银行开的手续费发票如何做帐
  • 退货发票会作废吗
  • 付了电费当月没有收到发票
  • 广告公司收到广告收入会计分录
  • 固定资产内部转移流程
  • 税务销售滞后是什么意思
  • 商业承兑过期后可以退回吗
  • 生物性资产是什么科目
  • 赊销是什么意思 视频
  • Linux下mysql的root密码修改方法
  • Win10 Mobile 10563预览版微软官方模拟器下载
  • ctrmon.exe
  • win10多屏设置方法
  • hp是什么软件缩写
  • 与web站点和web页面
  • 新装win8系统卡顿严重,虚拟内存为0
  • easyui点击弹出窗口
  • android的游戏
  • unity3d怎么移动物体
  • python sha256加密解密
  • 如何使用form表单
  • JavaScript replace(rgExp,fn)正则替换的用法
  • jquery遍历object
  • python多进程模块
  • jquery设置图片大小
  • 自贡市税务局稽查局领导
  • 税务文书有哪些
  • 上海增值税发票红字怎么开
  • 国家税务总局黑龙江电子税务局下载
  • 全国城管改革什么时候结束
  • 福建农村社保一个月可以拿多少钱
  • 新疆税务电子
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设