Androi 用户界面
扩展练习 制作一个有自动提示功能的应用程序。 5.5 界面事件 5.5.1 按键事件 在EditText中,每当任何一个键子按下或抬起时,都会引发按键事件 为了能够使EditText处理按键事件,需要使用setOnKeyListener ()函数在代码中设置按键事件监听器,并在onKey()函数添加按键事件的处理过程 entryText.setOnKeyListener(new OnKeyListener(){ @Override public boolean onKey(View view, int keyCode, KeyEvent keyEvent) { int metaState = keyEvent.getMetaState(); int unicodeChar = keyEvent.getUnicodeChar(); String msg = ; 5.5 界面事件 5.5.1 按键事件 msg +=按键动作: + String.valueOf(keyEvent.getAction())+\n; msg +=按键代码: + String.valueOf(keyCode)+\n; msg +=按键字符: + (char)unicodeChar+\n; msg +=UNICODE: + String.valueOf(unicodeChar)+\n; msg +=重复次数: + String.valueOf(keyEvent.getRepeatCount())+\n; msg +=功能键状态: + String.valueOf(metaState)+\n; msg +=硬件编码: + String.valueOf(keyEvent.getScanCode())+\n; msg +=按键标志: + String.valueOf(keyEvent.getFlags())+\n; labelView.setText(msg); if (checkBox.isChecked()) return true; else return false; } 5.5 界面事件 5.5.1 按键事件 第4行代码用来获取功能键状态。功能键包括左Alt键、右Alt键和Shift键,当这三个功能键被按下时,功能键代码metaState值分别为18、34和65;但没有功能键被按下时,功能键代码metaState值分别为0 第5行代码获取了按键的Unicode值,在第9行中,将Unicode转换为字符,显示在TextView中 第7行代码获取了按键动作,0表示按下按键,1表示抬起按键。第7行代码获取按键的重复次数,但按键被长时间按下时,则会产生这个属性值 第13行代码获取了按键的硬件编码,不同硬件设备的按键硬件编码都不相同,因此该值一般用于调试 第14行获取了按键事件的标志符 5.5 界面事件 5.5.2 触摸事件 Android界面框架支持对触摸事件的监听,并能够将触摸事件的详细信息传递给处理函数 需要设置触摸事件的监听器,并重载onTouch ()函数 第1行代码是设置控件的触摸事件监听器 在代码第3行的onTouch()函数中,第1个参数View表示产生触摸事件的界面控件;第2个参数MontionEvent表示触摸事件的详细信息,如产生时间、坐标和触点压力等 第5行是onTouch()函数的返回值 touchView.setOnTouchListener(new View.OnTouchListener(){ @Override public boolean onTouch(View v, MotionEvent event) { //过程代码…… return true/false; } 5.5 界面事件 5.5.2 触摸事件 TouchEventDemo是一个说明如何处理触摸事件的示例 TouchEventDemo用户界面 浅蓝色区域是可以接受触摸事件的区域,用户可以在Android模拟器中使用鼠标点击屏幕,用以模拟触摸手机屏幕 下方黑色区域是显示区域,用来显示触摸事件的类型、相对坐标、绝对坐标、触点压力、触点尺寸和历史数据量等信息 5.5 界面事件 5.5.2 触摸事件 在用户界面中使用了线性布局,并加入了3个TextView控件 第1个TextView(ID为touch_area)用来标识触摸事件的测试区域 第2个TextView(ID为history_label)用来显示触摸事件的历史数据量 第3个TextView(ID为event_label)用来触摸事件的详细信息,包括类型、相对坐
您可能关注的文档
- 2018济生活“抓主线”.pptx
- 2018福建省质检学试卷试题分析.doc
- 2018语文高一轮复习策略(2017.9).pptx
- 2018防范非法集资宣传资料.doc
- 2018造价工程师考试《技术与计量(土建)》讲义第8讲.doc
- 2018普通中新课程数学学科高三质量检测理科数学命题意图解读.ppt
- 2018高三化学轮复习备考会公开课《同分异构体的有序书写》.ppt
- 2018高三地理科学探究理性分析.pptx
- 2018高三模拟考试理科综合试题及答案.doc
- 2018高三历史复习策略《基于高考全国卷的应考策略研究》.ppt
- 伟明环保-市场前景及投资研究报告-境内业务稳健运行,印尼市场贡献边际增量.pdf
- 桂东县法院系统招聘考试真题2025.pdf
- 贵州省黔南布依族2026年中考三模物理试题及答案.pdf
- 贵州省黔南州2026年中考语文二模试卷附答案.pdf
- 贵州省铜仁市2026年中考语文二模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套完整答案详解.docx
- 贵州省毕节市2026年中考语文一模试卷附答案.pdf
- 贵州省贵阳市南明区2026年中考语文一模试卷附答案.pdf
- 2026上半年安徽事业单位联考合肥市庐江县招聘36人备考题库及一套参考答案详解.docx
- 贵州省贵阳市白云区2026年中考二模物理试题附答案.pdf
最近下载
- 2024年浙江省中考英语真题卷(含答案与解析)_7429.pdf VIP
- 华东师大版八下历史第二单元第4课-“大跃进”和人民公社化运动PPT24张.ppt VIP
- 2012上海杨浦区高三英语二模试卷及答案.doc VIP
- FANUC数控车床的主轴控制设计.doc VIP
- 2022年ISGE指南:宫腔镜子宫肌瘤切除术(全文).docx VIP
- 2025年湖南省长沙市中考英语真题(附答案).pdf VIP
- 怎么参加展会才能获得客户.doc VIP
- 设计斜齿轮零件的机械加工工艺规程.doc VIP
- 安徽省经济潜在增长率的测算、分析与展望:基于多维度视角与实证研究.docx
- 基于大数据植入广告发展趋势研究.doc VIP
原创力文档

文档评论(0)