WEB开发网
开发学院手机开发Android 开发 Android之事件监听 阅读

Android之事件监听

 2010-05-26 22:05:00 来源:WEB开发网   
核心提示:什么是事件监听器(Event Listener)UI的使用者事件处理,即View如何处理使用者的操作,Android之事件监听,是一个重要的课题, View是重要的类别,那么如何实现点击的动作呢?我们可以通过广播的形式来替代click linstener,我们知道widget其实就是一个 BroadcastReceiv

什么是事件监听器(Event Listener)

UI的使用者事件处理,即View如何处理使用者的操作,是一个重要的课题。 View是重要的类别,它是与使用者互动的前线;在 Android框架的设计中,以事件监听器(event listener)的方式来处理UI的使用者事件。

Android框架提供了非常良好的UI事件处理机制。先前的教学提到,View是绘制UI的类别,每个 View物件都可以向Android框架注册一个事件监听器。每个事件监听器都包含一个回呼函数(callback method),

这个回呼函数(callback method)主要的工作就是回应或处理使用者的操作。

Event Listener: 以Click Listener为例

以「使用者触碰(touch)」的动作来说,当 View要处理使用者触碰的事件时,就要向Android框架注册View.OnClickListener事件监听器;当「touch」事件发生时,Android框架便回呼事件监听器里的回呼函数。

View.OnClickListener是 click listener,故名思意,这是UI的「Click动作监听器」;当使用者对View进行Click操作时(即触控画面上的UI元件),Android 框架便会回呼这个View.OnClickListener的回呼函数。

View.OnClickListerner的回呼函数为OnClick()。

这里所提到的监听器泛指event listener,主要用来「监听」使用者的各种动作。除了View.OnClickListener 外,Android框架还有以下的event listener(及其callback method):

·View.OnLongClickListener: onLongClick()

·View.OnFocusChangeListener: onFocusChange()

·View.OnKeyListener: onKey()

·View.OnTouchListener: onTouch()

·View.OnCreateContextMenuListener: onCreateContextMenu()

另外一种处理UI事件的机制为事件处理器(event handler),event handler与event listener是不一样的二种处理机制。在自订Android component的教学里,再介绍这个部份。

Widget中事件监听器的实现

Widget中事件监听器的实现

widget中是没有click listener的,那么如何实现点击的动作呢?我们可以通过广播的形式来替代click linstener。

我们知道widget其实就是一个 BroadcastReceiver,所以在AndroidManifest.xml中,注册一个新的action:

< receiver android:name="XXX" >

< meta-data android:name="android.appwidget.provider"

1 2  下一页

Tags:Android 事件 监听

编辑录入:coldstar [复制链接] [打 印]
赞助商链接