`
makej2me
  • 浏览: 25740 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

UI事件处理

UI 
阅读更多
转载自:http://presses.iteye.com,在此记录一下,感谢presses的分享!


一、View对像中有一堆事件回调接口。例如View.OnClickListener、View.OnLongClickListener……。你需要监听事件时,只需要把实现事件回调接口的实例传入view实例的setOnXXXListener即可。

二、事件是一个从最外层分发,然后下沉到目标view的过程。事件到达目标view时,是先调用自定义的事件处理器,再调用默认的事件处理器。如果你的事件处事器返回true,即事件的分发过程立即终止,默认事件处理器也不会被调用。

三、关于事件的其它接口。Activity.dispatchTouchEvent(MotionEvent):可以拦截所有的touch Event。ViewGroup.onInterceptTouchEvent(MotionEvent):许允ViewGroup去查看分发到view的事件。

四、touch mode。当用户通过方向键或轨迹球在界面中游走时,界面会自动让可操作控件获得焦点(高亮显视)。这样可以让用户知道哪里可以操作。然而,当用户直接使用触摸屏操作时,上面说的自动获取焦点(高亮显视)就没必要了。这种经过控件而不高亮显视控件的模式叫touch mode。

五、具有触摸功能的设备,一旦用户触碰到屏幕,设备立即进入touch mode。这里只有isFocusableInTouchMode()返回true的组件才会获得焦点(例如文字编辑类控件)。其余的控件只会触发onclick事件。

六、当用户点击方向键或轨迹球时,系统会退出touch mode,然后找一个最近的控件,让它获得焦点。

七、可以用view.isInTouchMode去判断系统是否在touch mode。

八、handling focus/处理焦点。可以通过setFocusable、setFocusableInTouchMode设置控件在不同模式下是否可以获得焦点。在获取焦点顺序上,androud采用某方向上最近距离的原则让焦点随用户的操作而移动。另外开发人员也可以通过设置view的nextFocusDown、nextFocusLeft等四个方法来设置获取焦点的顺序。要让某view获得焦点,可以调用requestFocus()方法。
分享到:
评论

相关推荐

    Android UI事件处理

    Android UI事件处理 Android UI事件处理

    UI事件处理与布局管理 ppt教程

    安卓开发中重要的 UI事件处理与布局管理 ppt教程

    android-02-UI基本组件及事件处理.ppt

    android-02-UI基本组件及事件处理.ppt------安卓UI基本组件intent

    北大Java--图形UI与事件处理

    北京大学Java课程讲义,第八部分图形UI与事件处理

    unity3d游戏入门第21-24章.rar

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第18-20章

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第15-17章

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第13-14章

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第11-12章

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第五章----游戏对象

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第四章----场景与游戏对象

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第三章了解编译器

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第二章开发环境.rar

    因为文件较大分批上传 适合爱好者或者想从事unity3d游戏开发的人员 内容:第01章 课程内容 第02章 开发环境 第03章 了解编辑器 第04章 场景与游戏对象 ...第23章 UI事件处理 第24章 UI界面布局

    unity3d游戏入门第一章 .rar

    鼠标事件处理 第14章 脚本的运行 第15章 预制体 第16章 (练习) 子弹发射 第17章 物理系统 第18章 碰撞检测 第19章 (练习)飞机大战 第20章 音频播放 第21章 延时与消息调用 第22章 交互界面UI 第23章 UI事件处理 ...

    无窗口UI系统(UI与处理逻辑分离)

    本人经过一段的积累,写的第一个基于DirectX渲染插件,利用统一坐标而设计的全新UI系统;里面的例子是一个没有完成的辅助程序;完成了脚本系统,数据采集,主控制端与客户端的通信...如果你学过CEGUI的话,UI与事件分离

    Andro使用Data Binding将数据绑定到UI控件再使用RxBindings处理UI事件,实现双向数据流和响应式编程

    Android Architecture Components中的LiveData和ViewModel等组件可以帮助开发者管理UI状态和异步任务,避免了手动处理生命周期和内存泄漏等问题,简化了异步编程。 4. 支持数据绑定 Android Architecture ...

    程矢AndroidUI基本控件与事件处理.rar

    老二牛车教育 程矢AndroidUI基本控件与事件处理.rar

    SystemUI状态栏和导航栏的讲解

    能让开发者立刻马上了解状态栏,导航栏,并对SystemUI状态栏和导航栏进行ROM的定制化。 适合ROM定制者

    易语言UI窗口组件类模块

    易语言UI窗口组件类模块源码,UI窗口组件类模块,按钮消息过程,列表消息过程,UI事件_添加,取位高,取位低,是否在矩形内,创建组件,销毁组件,消息处理,绘制组件,挂接事件,设置背景,列表属性,事件_鼠标滚轮滚动,事件_鼠标...

    genesis OSD UI平台教程

    传统的处理手法是将特定场景下的OSD物件逐一用代码“画”出来,在遇到特定的UI事件时,再利用一堆if else判断出特定场景和操作对象,并做相应的OSD处理。在OSD较简单的情况下,其不失为一个可行的方法。但在遇到OSD...

Global site tag (gtag.js) - Google Analytics