CN102508675A - 基于android平台鼠标移动的响应处理方法及装置 - Google Patents
基于android平台鼠标移动的响应处理方法及装置 Download PDFInfo
- Publication number
- CN102508675A CN102508675A CN2011104472436A CN201110447243A CN102508675A CN 102508675 A CN102508675 A CN 102508675A CN 2011104472436 A CN2011104472436 A CN 2011104472436A CN 201110447243 A CN201110447243 A CN 201110447243A CN 102508675 A CN102508675 A CN 102508675A
- Authority
- CN
- China
- Prior art keywords
- mouse
- control
- interface
- android
- response
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000004044 response Effects 0.000 title claims abstract description 87
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000012544 monitoring process Methods 0.000 claims abstract description 21
- 230000009471 action Effects 0.000 claims abstract description 19
- 238000012545 processing Methods 0.000 claims abstract description 13
- 238000000034 method Methods 0.000 claims description 53
- 230000008569 process Effects 0.000 claims description 47
- 230000004048 modification Effects 0.000 claims description 13
- 238000012986 modification Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 abstract description 11
- 238000005316 response function Methods 0.000 abstract description 3
- 230000000875 corresponding effect Effects 0.000 description 55
- 238000010586 diagram Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000033772 system development Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Position Input By Displaying (AREA)
Abstract
本发明公开了基于android平台鼠标移动的响应处理方法及装置,由于采用了修改android框架层,将鼠标移动消息派遣到鼠标位置对应的控件;应用层通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息;当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。本发明使基于android平台的电子设备增加了新功能,当使用鼠标在应用界面的不同控件上移动时,应用界面会触发相应的响应,以后开发人员可直接修改应用层的设置就可以实现多种响应功能,大大节省了开发人员的时间,提高了效率。
Description
技术领域
本发明涉及android系统领域,尤其涉及的是一种基于android平台鼠标移动的响应处理方法及装置。
背景技术
基于android系统开发平台的智能电视,在电视界面的操作上,不但使用了传统的遥控器,而且越来越多的使用起了鼠标,但是现有技术基于android系统开发平台中,当使用鼠标在电视应用界面的不同控件上移动时,电视应用界面并不会触发任何响应,有时会给用户造成使用不方便,不知道当前鼠标所指的控件对应的是什么应用功能。
虽然google最新提供的sdk 4.0给出了一个api 接口,可以实现对光标悬停事件的支持,此方法是单独提供一种OnHoverListener(悬停事件监听),并通过setOnHoverListener(设置悬停事件监听) 进行注册实现光标的悬停事件监听,但是,对于用户来讲,想要实现此功能,必须依赖google的sdk4.0,这对软件版本的限制比较严重,使用范围受到限制,给用户造成不便。
因此,现有技术还有待于改进和发展。
发明内容
针对现有技术的上述缺陷,本发明提供一种基于android平台鼠标移动的响应处理方法及装置,其使基于android平台的电子设备增加了新功能,当使用鼠标在应用界面的不同控件上移动时,应用界面会触发相应的响应,增加了电子设备应用开发的使用接口,减少了对google sdk 的版本依赖,丰富了电子设备界面操作的多样性,为用户提供了方便。
本发明解决技术问题所采用的技术方案如下:
一种基于android平台鼠标移动的响应处理方法,其中,包括步骤:
A、修改android 框架层,将鼠标移动消息派遣到鼠标位置对应的控件;
B、应用层(APP)通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容;
C、启动应用,当鼠标在对应的控件上移入或移出时,查找鼠标在所述控件上的所述鼠标移入或所述鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A具体包括:
A1、修改android框架层,增加对鼠标移动响应的处理接口;
A2、窗口管理器将所述鼠标移动消息派发到当前响应窗口对应的消息队列,以将鼠标移动消息派遣到鼠标位置对应的控件。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A1具体包括:
A11、修改android框架层中的消息派发流程使控件处理器的消息派发,以树式根目录形式遍历根目录下的每个可见的控件,直到找到鼠标所在位置的控件。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A11具体包括:
A11、修改android框架层中的消息派发流程,使控件处理器的消息派发,以树式根目录形式遍历根目录下的每个可见的控件,直到找到鼠标所在位置的控件。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A11具体包括:
A111、遍历所有控件,判断鼠标是否在控件内部;
A112、如果在控件内部,则派发鼠标移入消息到控件;
A113、如果在控件内部,且控件是控件群, 则跳转到步骤A111;
A114、如果不在控件内部,且控件之前收到过鼠标移入消息,则派发鼠标移出消息;
A115、如果不在控件内部,且控件是控件群, 则跳转到步骤A114。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A2具体包括:
A21、窗口管理器根据鼠标的坐标位置,找到当前响应窗口;
A22、窗口管理器通过调用派遣指针接口,根据当前响应窗口找到对应的用户进程;
A23、所述用户进程通过控件处理器将鼠标移动消息派发到当前响应窗口对应的消息队列。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤A21具体包括:
A211、窗口管理器以堆栈的方式管理android系统中所有打开的窗口列表,当前可见窗口位于堆栈的顶层;
A212、窗口管理器从顶层查找可见的窗口,找到鼠标停留位置所对应的可见窗口,如果鼠标在窗口区域内,则给出返回值。
所述基于android平台鼠标移动的响应处理方法,其中,所述步骤B具体包括:
B1、应用层使用android框架层提供的触摸事件监听接口的扩展接口来进行界面控件的监听,
B2、通过所述触摸事件监听接口获取在android 框架层添加的两个状态:鼠标移入状态与鼠标移出状态,分别在应用层用代码设置这两种不同动作下,控件的响应事件。
一种基于android平台鼠标移动的响应处理装置,其中,包括:
修改与派发处理模块,用于修改android 框架层,将鼠标移动消息派遣到鼠标位置对应的控件;
应用层处理模块,用于控制应用层(APP)通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容;
显示处理模块,用于当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。
所述基于android平台鼠标移动的响应处理装置,其中,修改与派发处理模块包括:
修改单元,用于修改android框架层,增加对鼠标移动响应的处理接口;
派发单元,用于控制窗口管理器将鼠标移动消息派发到当前响应窗口对应的消息队列,以将鼠标移动消息派遣到鼠标位置对应的控件。
所述基于android平台鼠标移动的响应处理装置,其中,所述应用层处理模块包括:
监听单元、用于控制应用层使用android框架层提供的触摸事件监听接口的扩展接口来进行界面控件的监听;
设置单元,用于通过所述触摸事件监听接口获取在所述android 框架层添加的两个状态:鼠标移入状态与鼠标移出状态,分别在应用层用代码设置这两种不同动作下控件的响应事件。
本发明所提供的基于android平台鼠标移动的响应处理方法及装置,由于采用了修改android 框架层,将鼠标移动消息派遣到鼠标位置对应的控件;应用层通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息;当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。其使基于android平台的电子设备增加了新功能,当使用鼠标在应用界面的不同控件上移动时,应用界面会触发相应的响应,以后开发人员可直接修改应用层的设置就可以实现多种响应功能,大大节省了开发人员的时间,提高了效率。
附图说明
图1是本发明基于android平台鼠标移动的响应处理方法的较佳实施例的流程图。
图2是本发明基于android平台鼠标移动的响应处理方法的较佳实施例的输入系统的数据流途径图。
图3是本发明基于android平台鼠标移动的响应处理方法的较佳实施例的详细处理流程图。
图4是本发明基于android平台鼠标移动的响应处理装置的较佳实施例的原理框图。
图5是图4所示的响应处理装置中的修改与派发处理模块内部原理框图。
图6是图4所示的响应处理装置中的应用层处理模块内部原理框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参见图1,图1是本发明基于android平台鼠标移动的响应处理方法的较佳实施例的流程图。本发明提供的一种基于android平台鼠标移动的响应处理方法,如图1所示,主要包括以下步骤:
步骤S100,修改android 框架层(Android Framework),将鼠标移动消息(Mouse Move)派发到鼠标位置对应的控件(View)。
步骤S200,应用层(APP)通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容。
步骤S300,启动应用,当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施的内容,应用界面作出对应的预设显示。
其中,android 框架层(Android Framework)是android 构架中的一部分,是用于连接底层驱动与上层应用的中间层。所述步骤S100中修改android 框架层(Android Framework), 将鼠标移动(Mouse Move)消息发送到鼠标位置对应的控件(View)的具体实现步骤如下:
A1、修改android框架层,增加对鼠标移动响应处理的接口;
A2、WindowMananger(窗口管理器)将MouseMove(鼠标移动)消息派发到Hit Window(当前响应窗口)对应的消息队列,以将MouseMove(鼠标移动)消息派遣到鼠标位置对应的控件。
其中,在步骤A1中需要修改android框架层中的消息派发流程,使控件处理器的消息派发,以树式根目录形式遍历根目录下的每个可见的控件,直到找到鼠标所在位置的控件。
当完成修改android框架层,增加对鼠标移动响应的处理接口后,进入步骤A2中的WindowMananger(窗口管理器)将MouseMove(鼠标移动)消息派发到Hit(当前响应)窗口对应的消息队列。其中,WindowMananger(窗口管理器)是所有窗口的管理者。
参照图2所示,图2是本发明实施例的android输入系统的数据流途径图,通过WindowManagerService(窗口管理服务)的输入系统线程收集消息,分发到Focus Activity(当前响应窗口焦点)消息队列,然后通过消息系统分发,具体如下:
S11、外部输入设备接收鼠标移动的输入事件。
S12、鼠标移动的输入事件输入到输入系统(Input system)。
S13、Window Manager(窗口管理器)接收鼠标移动的输入事件。
S14、Window Manager(窗口管理器),根据鼠标移动的输入事件确定鼠标移动的坐标位置,并根据鼠标移动的坐标位置,找到鼠标移动的输入事件(简称鼠标事件)所对应的Hit Window(当前响应窗口) 。
具体的查找当前响应窗口的方法:WindowManager(窗口管理器)以堆栈的方式管理android系统中所有打开的窗口列表,当前可见窗口位于堆栈的顶层。从顶层查找可见Window(窗口), 如果鼠标在Windows区域内,则返回。WindowManager(窗口管理器)找到鼠标停留位置所对应的可见窗口,给出返回值。
S15、Window Manager(窗口管理器)通过调用dispatchPointer AIDL(派遣指针)接口,根据 HitWindow(当前响应窗口)找到对应的用户进程,将鼠标移动消息发给对应的ViewRoot(控件处理器)。
IWindow.aidl接口:是android种一种数据传输机制,在不同进程之间传递消息,其中的后缀AIDL为Android Interface Definition Language的缩写,即android接口描述语言,是android系统支持的不同进程之间进行数据通信的机制。用户进程是与窗口管理器不同的两个组织,要想让用户进程知道鼠标在其上,必须有人通知到它,这里窗口管理器通过数据通信机制dispatchPointer AIDL(派遣指针)接口告知用户进程哪个窗口应该响应鼠标移动的消息。
S16、控件处理器派发消息,即用户进程通过ViewRoot(控件处理器)将鼠标移动的消息派发到HitWindow(当前响应窗口)对应的消息队列。
ViewRoot(控件处理器)实际是一个Handler(处理器),Android Handler的基本功能就是处理回调,发送消息。
用户进程通过控件处理器将消息放置到鼠标所在的当前可见窗口所对应的消息队列中,等待处理。
S17、HitWindow(当前响应窗口)对应的控件群收到所述鼠标移动消息。
S18、判断当前的控件(View)是单独的控件(View)还是控件群(ViewGroup)。
S19、是控件群,并返回S18。
S20、是单独的控件(View),并进入S21。
S21、向当前响应窗口对应的控件发送鼠标移入或移出消息。
其中,android 应用界面控件组织是以控件处理器为根的树形结构,控件处理器的消息派发是遍历树中的每个可见的控件,直到找到鼠标所在位置的那个控件,然后派发鼠标移入该控件还是移出该控件的消息,具体实现步骤如下:
1. 遍历所有控件(View),判断鼠标是否在控件(View)内部;
2.如果在控件(View)内部,则派发Mouse_MONVEIN (鼠标移入)消息到控件(View);
如果控件(View)是ViewGroup(包含有子View), 则返回步骤 1;
3.如果不在控件(View)内部,则判断控件之前是否接收到鼠标移入消息,分两种情况:
(1)如果控件(View)之前没有收到过Mouse_MOVEIN(鼠标移入)消息,则结束;
(2)如果控件(View)之前收到过Mouse_MOVEIN(鼠标移入)消息,则派发MOUSE_MOVEOUT(鼠标移出)消息。然后继续判断控件是否是控件群。如果控件(View)是ViewGroup(控件群)(控件群是指包含有多个View), 则返回步骤3。如果否,则结束。
以上framework (框架)层的响应方法流程。
其中所述步骤S200中应用层使用android API(应用程序编程接口)提供的OnTouchListener(触摸事件监听)接口监听各控件(View)的鼠标移动消息,监听从framwork(框架)层提供的方法设置move in 和move out动作,分别在应用层设置在该动作下所要实施内容: 即在并在应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容。
其中,android API应用接口是框架层提供给应用层用于编写应用代码的调用接口。
OnTouchListener接口是(触摸事件监听)接口,用于监听输入设备的触摸事件,一旦捕捉到该事件,就会按照代码中所设定的步骤来完成相应的动作。
应用层使用android框架层提供的触摸事件监听接口的扩展接口来进行界面控件的监听,该接口中有在框架(framework)层添加的两个状态,move in(鼠标移入) 与 move out (鼠标移出),分别在应用层用代码设置这两种不同动作下即move in(鼠标移入) 与 move out (鼠标移出)动作,控件的响应事件,就可以在应用运行的时候,看到相应的界面变化设置。 (以下的代码只是一个例子而已)。
例如对某个控件实现OnTouchListener(触摸事件监听器)的监听,如Button mTestButton; Button是一个控件类别,这里在这个类别中声明一个新的button出来,命名为mTestButton。
mTestButton.setOnTouchListener(iTouch); //声明对按钮进行触摸事件监听
View.OnTouchListener iTouch = new View.OnTouchListener() { //监听的具体设置
publicboolean onTouch(View v, MotionEvent event) { //函数名称
Log.e("MotionEvent.ACTION_MOVE", event.getAction());
if (event.getAction() == MOUSE_MOVEIN) { //鼠标移入时
mTestButton.setBackgroundColor(0xff093279); //想要进行的操作
} elseif (event.getAction() == MOUSE_MOVEOUT) { //鼠标移出时
mTestButton.setBackgroundColor(0xffffffff); //想要进行的操作
}
returnfalse;
}
}。
然后进入到步骤S300的启动应用,当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施的内容,应用界面作出对应的预设显示。也即启动应用,移动鼠标于各个控件上,即可看到代码中所设置的显示结果。
为了更进一步地理解本发明,请参照图3,图3是本发明基于android平台鼠标移动的响应处理方法的较佳实施例的详细处理流程图。如图3所示,上半部分为android 框架层(Android Framework)处理流程、下半部分是APP应用层处理流程。具体如下:
S30、通过Window Manager(窗口管理器)对当前响应窗口判断。
S31、Window Manager(窗口管理器)从框架层开始查找可见的窗口(Window)。
S32、Window Manager(窗口管理器)通过Iwindow.aidi接口将消息发给对应的控件处理器(ViewRoot)。
S33、遍历所有控件(View),判断鼠标位置是否在控件(View)内部;当是时进入S34,当否时进入S36。
S34、派发鼠标移入消息(mouse_move in)到控件,并进入S41,同时进入S35。
S35、判断控件是否是控件群(ViewGroup),当是时返回S33,当否时进入S50。
S36、控件之前是否接收到鼠标移入消息(mouse_move in),当是时进入S37,当否时进入S50。
S37、派发鼠标移出消息(mouse_move out)到控件,进入S38,并同时进入S41。
S38、判断控件是否是控件群(ViewGroup),当是时返回到S36,当否时进入S50。
S40、APP应用层对使用中的各个控件(View)进行监控。
S41、当前响应控件接收到鼠标移入消息或移出消息,APP应用层监听到消息派发,则响应其对应的设置。
S42、各个控件响应其应用层上对应的设置。
S50、结束。
这样应用启动后,在界面上找到设置的按钮,对按钮进行鼠标的移入或移出操作,就可以看到代码中所设置的移入或者移出的响应变化。
可见,本发明提供的一种基于android平台鼠标移动的响应处理方法,其使基于android平台的电子设备增加了新功能:当使用鼠标在应用界面的不同控件上移动时,应用界面会触发相应的响应,增加了电子设备应用开发的使用接口、 减少了对google sdk 的版本依赖,丰富了电子设备界面操作的多样性,为用户提供了方便。当然上述基于android平台的电子设备可以是安装有android操作系统的智能电视、智能手机,还可以是安装有android操作系统的平板电脑。
基于上述的android平台鼠标移动的响应方法,本发明实施例还提供了一种基于android平台鼠标移动的响应处理装置,如图4所示,主要包括:
修改与派发处理模块410:用于修改android 框架层,将鼠标移动消息派发到鼠标位置对应的控件。具体如上所述。
应用层处理模块420:用于控制应用层(APP)通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容。具体如上所述。
显示处理模块430,用于当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入或鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。具体如上所述。
其中,如图5所示,所述修改与派发处理模块410包括:
修改单元411,用于修改android框架层,增加对鼠标移动响应处理的接口。具体如上所述。
派发单元412,用于控制窗口管理器将鼠标移动消息派发到当前响应窗口对应的消息队列,以将鼠标移动消息派遣到鼠标位置对应的控件。具体如上所述。
如图6所示,所述应用层处理模块420包括:
监听单元421、用于控制应用层使用android框架层提供的触摸事件监听接口的扩展接口来进行界面控件的监听。具体如上所述。
设置单元422,用于通过所述触摸事件监听接口获取在android 框架层添加的两个状态:鼠标移入状态与鼠标移出状态,分别在应用层用代码设置这两种不同动作下,控件的响应事件。具体如上所述。
综上所述,本发明所提供的基于android平台鼠标移动的响应处理方法和装置,由于采用了修改android 框架层,将鼠标移动消息派遣到鼠标位置对应的控件;应用层通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在应用层预先在各控件范围上的鼠标移入和鼠标移出动作下设置分别所要实施的内容;当鼠标在对应的控件上移入或移出时,查找鼠标在该控件上的鼠标移入和鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。其使基于android平台的电子设备增加了新功能:当使用鼠标在应用界面的不同控件上移动时,应用界面会触发相应的响应,以后开发人员可直接修改应用层的设置就可以实现多种响应功能,大大节省了开发人员的时间,提高了效率。
本发明通过修改android 框架层(Android Framework),扩展OnTouchListener(触摸事件监听)接口,并通过对控件进行SetOnTouchListener()(设置触摸事件监听)进行注册,在监听事件中,通过调用触摸事件监听接口的扩展接口,可以实现上述新功能。这样不必依赖google的软件版本,而且不用单独声明接口出来,只是在原有的基础上进行扩展,就可以轻松实现该功能。
本发明并具有如下优点:
1)本发明能够完成鼠标移动于电子设备界面时对界面控件的随时响应。
2)本发明在不影响鼠标点击界面控件响应动作的前提下,可以让应用开发人员自由设置鼠标移入移出控件区域时的动作内容变化。
3)本发明是在扩展原有接口的基础上,提出的新的实现方法,不用依赖google sdk 的软件版本,可以在任何一个版本的sdk上实现,应用范围非常广。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种基于android平台鼠标移动的响应处理方法,其特征在于,包括步骤:
A、修改android 框架层,将鼠标移动消息派发到鼠标位置对应的控件;
B、应用层通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在所述应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容;
C、启动应用,当所述鼠标在对应的控件上移入或移出时,查找所述鼠标在所述控件上的所述鼠标移入或所述鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。
2.根据权利要求1所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤A具体包括:
A1、修改android框架层,增加对鼠标移动响应的处理接口;
A2、窗口管理器将所述鼠标移动消息派发到当前响应窗口对应的消息队列,以将鼠标移动消息派遣到鼠标位置对应的控件。
3.根据权利要求2所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤A1具体包括:
A11、修改android框架层中的消息派发流程,使控件处理器的消息派发,以树式根目录形式遍历根目录下的每个可见的控件,直到找到鼠标所在位置的控件。
4.根据权利要求3所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤A11具体包括:
A111、遍历所有控件,判断鼠标是否在控件内部;
A112、如果在控件内部,则派发鼠标移入消息到控件;
A113、如果在控件内部,且控件是控件群, 则跳转到步骤A111;
A114、如果不在控件内部,且控件之前收到过鼠标移入消息,则派发鼠标移出消息;
A115、如果不在控件内部,且控件是控件群, 则跳转到步骤A114。
5.根据权利要求2至4中任一项所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤A2具体包括:
A21、窗口管理器根据鼠标的坐标位置,找到当前响应窗口;
A22、窗口管理器通过调用派遣指针接口,根据当前响应窗口找到对应的用户进程;
A23、所述用户进程通过控件处理器将鼠标移动消息派发到当前响应窗口对应的消息队列。
6.根据权利要求5所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤A21具体包括:
A211、所述窗口管理器以堆栈的方式管理android系统中所有打开的窗口列表,当前可见窗口位于堆栈的顶层;
A212、所述窗口管理器从顶层查找可见的窗口,找到所述鼠标停留位置所对应的可见窗口,如果所述鼠标在窗口区域内,则给出返回值。
7.根据权利要求1至4中任一项所述基于android平台鼠标移动的响应处理方法,其特征在于,所述步骤B具体包括:
B1、所述应用层使用android框架层提供的触摸事件监听接口的扩展接口来进行界面控件的监听;
B2、通过所述触摸事件监听接口获取在所述android 框架层添加的两个状态:鼠标移入状态与鼠标移出状态,分别在所述应用层用代码设置所述鼠标移入状态与所述鼠标移出状态下控件的响应事件。
8.一种基于android平台鼠标移动的响应处理装置,其特征在于,包括:
修改与派发处理模块,用于修改android 框架层,将鼠标移动消息派发到鼠标位置对应的控件;
应用层处理模块,用于控制应用层通过应用程序编程接口提供的触摸事件监听接口监听各控件的鼠标移动消息,并在所述应用层预先设置分别对应鼠标移入和鼠标移出动作所要实施的内容;
显示处理模块,用于当鼠标在对应的控件上移入或移出时,查找鼠标在所述控件上的鼠标移入和鼠标移出动作对应所要实施内容,应用界面作出对应的预设显示。
9.根据权利要求8所述基于android平台鼠标移动的响应处理装置,其特征在于,修改与派发处理模块包括:
修改单元,用于所述修改android框架层,增加对鼠标移动响应的处理接口;
派发单元,用于控制窗口管理器将鼠标移动消息派发到当前响应窗口对应的消息队列,以将鼠标移动消息派遣到鼠标位置对应的控件。
10.根据权利要求8或9所述基于android平台鼠标移动的响应处理装置,其特征在于,所述应用层处理模块包括:
监听单元,用于控制应用层使用android框架层提供的所述触摸事件监听接口的扩展接口来进行界面控件的监听;
设置单元,用于通过所述触摸事件监听接口获取在所述android 框架层添加的两个状态:鼠标移入状态与鼠标移出状态,分别在应用层用代码设置所述鼠标移入状态与所述鼠标移出状态下控件的响应事件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110447243.6A CN102508675B (zh) | 2011-12-28 | 2011-12-28 | 基于android平台鼠标移动的响应处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110447243.6A CN102508675B (zh) | 2011-12-28 | 2011-12-28 | 基于android平台鼠标移动的响应处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102508675A true CN102508675A (zh) | 2012-06-20 |
CN102508675B CN102508675B (zh) | 2015-01-07 |
Family
ID=46220767
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110447243.6A Expired - Fee Related CN102508675B (zh) | 2011-12-28 | 2011-12-28 | 基于android平台鼠标移动的响应处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102508675B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102937859A (zh) * | 2012-10-19 | 2013-02-20 | 山东大学 | 一种基于Android操作系统的桌面系统的实现方法 |
CN103345427A (zh) * | 2013-07-15 | 2013-10-09 | 四川公用信息产业有限责任公司 | 基于Android消息处理机制的视图切换系统及方法 |
CN103593290A (zh) * | 2013-11-13 | 2014-02-19 | 安一恒通(北京)科技有限公司 | 一种测试软件稳定性的方法和装置 |
CN103634678A (zh) * | 2013-11-14 | 2014-03-12 | 深圳市同洲电子股份有限公司 | 一种信息展示方法、装置及系统 |
CN103823580A (zh) * | 2014-02-28 | 2014-05-28 | 广州视源电子科技股份有限公司 | 基于Android系统的鼠标配置方法 |
CN104636158A (zh) * | 2013-11-14 | 2015-05-20 | 博雅网络游戏开发(深圳)有限公司 | 基于Android操作系统的鼠标指针控制方法和装置 |
WO2017113709A1 (zh) * | 2015-12-31 | 2017-07-06 | 乐视控股(北京)有限公司 | WiFi列表显示方法及装置 |
CN107301764A (zh) * | 2016-04-15 | 2017-10-27 | 零度智控(北京)智能科技有限公司 | 一种遥控方法、装置及终端 |
WO2019100898A1 (zh) * | 2017-11-24 | 2019-05-31 | 南昌黑鲨科技有限公司 | 一种输入操作处理方法、处理装置及计算机可读存储介质 |
CN110851223A (zh) * | 2019-11-08 | 2020-02-28 | 四川长虹电器股份有限公司 | 一种智能电视实现鼠标快捷操作的方法 |
CN112131076A (zh) * | 2020-09-17 | 2020-12-25 | 上海上讯信息技术股份有限公司 | 一种用于获取鼠标操作事件信息的方法、设备与系统 |
JP2021504826A (ja) * | 2017-11-24 | 2021-02-15 | シャンハイ ジョンリエン テクノロジーズ リミテッド,カンパニーShanghai Zhonglian Technologies Ltd.,Co | アプリケーションプログラムの起動方法、起動装置およびコンピュータ読み取り可能な記憶媒体 |
CN112749063A (zh) * | 2021-01-20 | 2021-05-04 | 深圳橙子自动化有限公司 | 基于应用程序监控设备运行流程的方法、装置及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007066077A (ja) * | 2005-08-31 | 2007-03-15 | Canon Inc | Gui生成方法、gui生成装置、コンピュータプログラム及び記憶媒体 |
CN101398971A (zh) * | 2007-09-25 | 2009-04-01 | 中强光电股份有限公司 | 触摸式遥控系统及方法 |
CN102109959A (zh) * | 2011-03-07 | 2011-06-29 | 惠州Tcl移动通信有限公司 | 屏幕旋转时java应用程序界面跟随旋转的方法 |
-
2011
- 2011-12-28 CN CN201110447243.6A patent/CN102508675B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007066077A (ja) * | 2005-08-31 | 2007-03-15 | Canon Inc | Gui生成方法、gui生成装置、コンピュータプログラム及び記憶媒体 |
CN101398971A (zh) * | 2007-09-25 | 2009-04-01 | 中强光电股份有限公司 | 触摸式遥控系统及方法 |
CN102109959A (zh) * | 2011-03-07 | 2011-06-29 | 惠州Tcl移动通信有限公司 | 屏幕旋转时java应用程序界面跟随旋转的方法 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102937859A (zh) * | 2012-10-19 | 2013-02-20 | 山东大学 | 一种基于Android操作系统的桌面系统的实现方法 |
CN103345427A (zh) * | 2013-07-15 | 2013-10-09 | 四川公用信息产业有限责任公司 | 基于Android消息处理机制的视图切换系统及方法 |
CN103593290B (zh) * | 2013-11-13 | 2016-06-01 | 安一恒通(北京)科技有限公司 | 一种测试软件稳定性的方法和装置 |
CN103593290A (zh) * | 2013-11-13 | 2014-02-19 | 安一恒通(北京)科技有限公司 | 一种测试软件稳定性的方法和装置 |
CN103634678A (zh) * | 2013-11-14 | 2014-03-12 | 深圳市同洲电子股份有限公司 | 一种信息展示方法、装置及系统 |
CN104636158A (zh) * | 2013-11-14 | 2015-05-20 | 博雅网络游戏开发(深圳)有限公司 | 基于Android操作系统的鼠标指针控制方法和装置 |
CN103823580B (zh) * | 2014-02-28 | 2017-07-11 | 广州视源电子科技股份有限公司 | 基于Android系统的鼠标配置方法 |
CN103823580A (zh) * | 2014-02-28 | 2014-05-28 | 广州视源电子科技股份有限公司 | 基于Android系统的鼠标配置方法 |
WO2017113709A1 (zh) * | 2015-12-31 | 2017-07-06 | 乐视控股(北京)有限公司 | WiFi列表显示方法及装置 |
CN107301764A (zh) * | 2016-04-15 | 2017-10-27 | 零度智控(北京)智能科技有限公司 | 一种遥控方法、装置及终端 |
CN107301764B (zh) * | 2016-04-15 | 2024-02-09 | 北京远度互联科技有限公司 | 一种遥控方法、装置及终端 |
WO2019100898A1 (zh) * | 2017-11-24 | 2019-05-31 | 南昌黑鲨科技有限公司 | 一种输入操作处理方法、处理装置及计算机可读存储介质 |
JP2021504823A (ja) * | 2017-11-24 | 2021-02-15 | シャンハイ ジョンリエン テクノロジーズ リミテッド,カンパニーShanghai Zhonglian Technologies Ltd.,Co | 入力操作処理方法、処理装置およびコンピュータ読み取り可能な記憶媒体 |
JP2021504826A (ja) * | 2017-11-24 | 2021-02-15 | シャンハイ ジョンリエン テクノロジーズ リミテッド,カンパニーShanghai Zhonglian Technologies Ltd.,Co | アプリケーションプログラムの起動方法、起動装置およびコンピュータ読み取り可能な記憶媒体 |
CN110851223A (zh) * | 2019-11-08 | 2020-02-28 | 四川长虹电器股份有限公司 | 一种智能电视实现鼠标快捷操作的方法 |
CN110851223B (zh) * | 2019-11-08 | 2022-02-01 | 四川长虹电器股份有限公司 | 一种智能电视实现鼠标快捷操作的方法 |
CN112131076A (zh) * | 2020-09-17 | 2020-12-25 | 上海上讯信息技术股份有限公司 | 一种用于获取鼠标操作事件信息的方法、设备与系统 |
CN112749063A (zh) * | 2021-01-20 | 2021-05-04 | 深圳橙子自动化有限公司 | 基于应用程序监控设备运行流程的方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102508675B (zh) | 2015-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102508675A (zh) | 基于android平台鼠标移动的响应处理方法及装置 | |
AU2014201293B2 (en) | Multi-input control method and system, and electronic device supporting the same | |
CN103049190B (zh) | 一种移动通信终端及控制设备操作的方法 | |
CN102421028B (zh) | 智能电视的控制方法、智能电视、遥控装置及控制系统 | |
CN109426428A (zh) | 一种终端的操作指导信息提供方法及终端设备 | |
JP2001142825A (ja) | 携帯型情報処理端末、情報入出力システム及び情報入出力方法 | |
CN103154856A (zh) | 针对手势识别的环境相关动态范围控制 | |
CN103702154A (zh) | 触摸屏遥控器及其遥控方法 | |
CN102929425A (zh) | 一种触摸按键控制方法及装置 | |
KR20150026403A (ko) | 듀얼 모니터링 시스템 및 방법 | |
CN107679113A (zh) | 轻应用的获取方法、设备及电子设备 | |
CN102081500A (zh) | 一种显示控制方法及装置和系统 | |
CN101916501A (zh) | 遥控方法、受控方法以及相关装置 | |
CN103036962A (zh) | 一种文件的共享方法及手持设备 | |
CN111770368A (zh) | 大屏幕显示设备的控制方法、装置、存储介质和电子设备 | |
CN103491444A (zh) | 图像互动方法和系统以及对应的显示装置 | |
CN103929668A (zh) | 一种基于使用安卓系统的电视机的操控方法及装置 | |
KR20160020486A (ko) | 터치패드 조작 및 더블 탭 주밍을 위한 독립적 히트 테스팅 | |
CN103019840A (zh) | 用于设置桌面的方法和装置 | |
CN112199124B (zh) | 一种项目开启方法及装置、显示设备 | |
WO2022228097A1 (zh) | 显示方法、显示装置和电子设备 | |
CN112449227B (zh) | 触屏应用兼容遥控器操作的交互方法、装置及智能电视 | |
CN113391746B (zh) | 一种显示设备及多窗口焦点控制方法 | |
WO2014014278A1 (ko) | 터치 유저 인터페이스 방법 및 영상 장치 | |
CN105785765A (zh) | 智能家居设备的信息处理及遥控方法、装置与系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150107 |