


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Android UI界面编程简述Chateau Aerlian布局菜单的生成对话框的生成UI事件处理在Android,有多种方法可以截取用户与应用程序之间的事件交互。考虑到用户界面上的事件,可以通过用户操作的界面所对应的View对象来获取。View类提供了相关的方法。在构建界面布局时,会使用到View类,其中有一些公共的回调函数,对用户界面事件是有用的。当对应的View 上有事件发生时,这些回调函数将被Android的Framework调用。例如,一个View(属于一个Button)被触摸点击,onTouchEvent()方法将被调用。为了去获取该事件,开发者必须扩展这个类,并且重载这个方法。但是,扩展每一个View对象实例以便去获取事件,这样做是不实际的。这就是为什么View类也包含一些嵌套的接口,该接口和回调函数一起使用,方便定义。这些接口叫做事件监听,能通过他们来获取用户与界面的交互。当经常地使用事件监听时,可能也会需要扩展一个View类,以便去构建一个用户自定义元素。也许你希望去扩展一个Button类去做一些其他事情。在该情况下,你将能够通过使用eventhandlers去定义缺省的事件行为。事件监听一个事件监听是View类中的一个接口,其中包含一个单一的回调方法。当View监听被注册并被用户操作所触发时,Android框架将调用这些方法。OnClick()来自View.OnClickListener.,用户点击Item(Touch模式)、提起导航键、按下轨迹球、按下enter键时触发。OnLongClick()来自View.OnLongClickListener.,用户长按Item(Touch模式)、长按导航键、长按轨迹球、长按enter键。OnFocueChange()来自View.OnFocusChangeListener.,用户使用轨迹球或者是导航键去移动光标。OnKey()来自View.OnKeyListener,用户按下或者释放一个Key设备。OnTouch()来自View.OnTouchListener,用户的触摸事件,例如按下、释放、移动等。OnCreateContextMenu()来自View.OnCreateContextMenuListener,当一个ContextMenu被构建时触发。上述方法是他们对应的接口的常见处理。定义其中的一个方法然后处理事件。在Activity中实现嵌套接口,或者定义他们为一个未命名的类。然后,将实现的实例传递给对应的View.setListener方法。例如:/ Create an anonymous implementation of OnClickListenerprivate OnClickListener mCorkyListener = new OnClickListener() public void onClick(View v) / do something when the button is clicked ;protected void onCreate(Bundle savedValues) . / Capture our button from layout Button button = (Button)findViewById(R.id.corky); / Register the onClick listener with the implementation above button.setOnClickListener(mCorkyListener); .onLongClick() 返回TURE,已处理,FALSE,未处理,可以给其他监听者处理onKey() 返回TURE,已处理,FALSE,未处理,可以给其他监听者处理onTouch(),返回FALSE,则其后的事件也不关心键盘事件总是传递到当前有光标的View。他们总是从View布局架构的顶端开始往下传递,直到抵达合适的目的地。如果你的View(可能是Sub View)当前拥有光标,则能够发现事件经过了Dispatchkeyevent()方法。如果需要通过View处理所有的key事件,则可以在Activity的onkeyDown(),onKeyUp()中接收到事件。返回Ture,将终止事件,事件不再向其他监听者发送。事件处理如果通过一个VIEW构建一个自定义的元素,则你能够定义一些回调函数用作缺省的事件处理。包括:onKeyDown(int, KeyEvent) 新按键发生 onKeyUp(int, KeyEvent) - 按键Up onTrackballEvent(MotionEvent) 轨迹球事件 onTouchEvent(MotionEvent) 屏幕上移动onFocusChanged(boolean, int, Rect) View获取光标或者失去光标还有一些方法,不是属于View,但是影响对于事件的处理。Activity.dispatchTouchEvent(MotionEvent) 允许Activity在分发之前去截取触摸事件,ViewGroup.onInterceptTouchEvent(MotionEvent) ViewGroup在分发到SubView的时候获取事件ViewParent.requestDisallowInterceptTouchEvent(boolean) 父View不截取触摸事件.触摸模式触摸模式,不需要长时间保持光标,被on-Click监听获取。非触摸模式,长时间保持光标,按Enter后
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 46111-2025农村易腐垃圾太阳能辅助堆肥处理技术规范
- 2025年新能源汽车自动驾驶技术对车险行业的影响与市场反应研究报告
- 建筑施工安全管理信息化在智能建造中的应用研究2025年报告
- 2025年中国高温羊毛行业市场分析及投资价值评估前景预测报告
- 功能性饮料在2025年健身APP运动数据挖掘与市场推广策略
- 本课综合与测试说课稿小学综合实践活动六年级上册沪科黔科版
- 远程医疗助力偏远地区医疗服务体系整体效能提升报告
- 2025年中国高纯羟基化单壁碳纳米管行业市场分析及投资价值评估前景预测报告
- 2025年中国高纯度硒行业市场分析及投资价值评估前景预测报告
- 2025年中国高玻纤块状模塑料行业市场分析及投资价值评估前景预测报告
- 静脉高营养治疗
- 肉毒素知识培训课件
- 最终版附件1:“跨学科主题学习”教学设计(2025年版)
- 中国血脂管理指南(基层版+2024年)解读
- 艾梅乙防治知识培训课件
- 2025年春新北师大版数学七年级下册课件 第四章 三角形 问题解决策略:特殊化
- 2024年1月版安全环境职业健康法律法规标准文件清单
- 校外培训机构传染病防控健康教育制度
- 大学语文知到智慧树章节测试课后答案2024年秋南昌大学
- 凉菜岗位职责
- 药学本科毕业论文范文
评论
0/150
提交评论