一种滑动识别方法和装置制造方法

文档序号:6491434阅读:198来源:国知局
一种滑动识别方法和装置制造方法
【专利摘要】本发明实施方式提出了一种滑动识别方法和装置。方法包括:设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。本发明实施方式提高了屏幕滑动事件识别成功率。还可以将本发明实施方式应用到各种终端中,并且可以跨平台跨终端使用,适用范围非常广泛。
【专利说明】一种滑动识别方法和装置
【技术领域】
[0001]本发明实施方式涉及信息处理【技术领域】,更具体地,涉及一种滑动识别方法和装置。
【背景技术】
[0002]智能终端(Smartphone),是指“像个人电脑一样,具有独立的操作系统,可以由用户自行安装软件、游戏等第三方服务商提供的程序,通过此类程序来不断对手机的功能进行扩充,并可以通过移动通讯网络来实现无线网络接入的这样一类手机的总称”。
[0003]智能终端操作系统是一种运算能力及功能比传统功能手机系统更强的手机系统。目前,使用较多的操作系统有:Android、iOS、Symbian、Windows Phone 和 BlackBerry OS,等等,它们之间的应用软件通常互不兼容。因为可以像个人电脑一样安装第三方软件,所以智能终端有丰富的功能。智能终端能够显示与个人电脑所显示出来一致的正常网页,它具有独立的操作系统以及良好的用户界面,它拥有很强的应用扩展性、能方便随意地安装和删除应用程序。
[0004]目前在智能终端的一些应用程序中,大量采用有基于屏幕滑动事件的用户交互方式。目前,一般采用各种滚动视图(ScrollView)控件来识别屏幕上的手指滑动事件。如果滚动视图控件的内容大小设置为大于屏幕的大小,则滚动视图控件可以通过滚动来展现全部内容。如果滚动视图控件的宽度跟屏幕一样,而高度大于屏幕,则可以实现上下滑动;如果滚动视图控件的高度跟屏幕一样,而宽度大于屏幕,则可以实现左右滑动。
[0005]在现有技术中,一般采用两个叠加的滚动视图控件来实现左右滑动和上下滑动同时可能存在的情况。然而,由于用户的滑动手势大多较为随意,两个滚动视图控件叠加会经常导致这两个滚动视图控件同时拦截屏幕滑动事件,从而造成错误的识别。

【发明内容】

[0006]本发明实施方式提出一种滑动识别方法,以提高屏幕滑动事件识别成功率。
[0007]本发明实施方式还提出一种滑动识别装置,以提高屏幕滑动事件识别成功率。
[0008]本发明实施方式的具体方案如下:
[0009]一种滑动识别方法,该方法包括:
[0010]设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;
[0011]第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0012]一种滑动识别装置,包括视图设置单元和第一视图处理单元,其中:
[0013]视图设置单元,用于设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;[0014]第一视图处理单元,用于使能第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0015]从上述技术方案可以看出,在本发明实施方式中,设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。由此可见,应用本发明实施方式之后,实现了多个滚动视图控件的屏幕滑动事件的分别识别处理,防止多个滚动视图控件同时识别屏幕滑动事件所导致的误识别问题,从而提高了屏幕滑动事件识别成功率。
[0016]另外,可以将本发明实施方式可以应用到各种终端中,可以跨平台跨终端使用本发明实施方式,适用范围非常广泛。
【专利附图】

【附图说明】
[0017]图1为根据本发明实施方式的滑动识别方法流程图;
[0018]图2为根据本发明实施方式的最上层为左右滑动滚动视图控件的层次结构图;
[0019]图3为根据本发明实施方式的最上层为上下滑动滚动视图控件的层次结构图;
[0020]图4为根据本发明实施方式的滑动识别装置结构图。
【具体实施方式】
[0021]为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
[0022]在各种应用场景中,比如开发移动设备上的产品应用时,经常用到点击、触摸、滑动等手势操作。在开发相应产品的过程中,有时需要使用如下的场景:用两个叠加的滚动视图控件来同时完成对左右滑动和上下滑动的识别效果。由于用户的手势经常不是标准的左右或者上下滑动,这种场景中的滑动事件识别率就是衡量产品应用功能的重要指标。
[0023]当多个滚动视图控件同时使用,并叠加在同一个视图上面时,各个滚动视图控件对屏幕滑动事件优先拦截,各自判断屏幕滑动事件是否为适于自身识别的滑动事件。这样当用户手指在屏幕上进行滑动时,各个滚动视图控件都会对该屏幕滑动事件进行判断,从而会造成识别错误的情况,不能及时反应用户的意图。
[0024]比如:在现有技术中,当采用两个叠加的滚动视图控件来同时实现左右滑动和上下滑动这两种滑动效果时,由于这两个滚动视图控件没有层次区别,会同时拦截屏幕滑动事件并各自判断是否滚动,因此经常会出现针对不标准滑动手势的误识别。即用户可能原本的目的是左右滑动,但却被识别为了上下滑动,等等。
[0025]在本发明实施方式中,通过视图分层的方式,针对屏幕滑动事件的识别进行隔离。每个滚动视图控件可以单独对各自的屏幕滑动事件进行拦截处理,实现了将不同的滚动视图控件的拦截判断放在不同的视图上面,这样就避免了多个滚动视图控件同时拦截一个屏幕滑动事件的情形,因此能够提高屏幕滑动事件识别成功率。[0026]图1为根据本发明实施方式的滑动识别方法流程图。
[0027]如图1所示,该方法包括:
[0028]步骤101:设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器。
[0029]在这里,首先设置第一视图和位于第一视图下面的第二视图,将第一视图作为第一滚动视图控件的父容器,而且将第一滚动视图控件的委托者设置为该第一视图。当用户在屏幕上面做出手势的时候,按照屏幕滑动事件的传递顺序,将由位于第二视图上层的第一视图首先接收。
[0030]步骤102:第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0031]当用户在屏幕上面做出手势的时候,最上层的第一视图首先接收屏幕滑动事件。由于该第一视图是第一滚动视图控件的父容器,所以第一滚动视图控件优先执行事件处理,判断该屏幕滑动事件是否为第一滚动视图控件所对应识别的滑动。如果判定为是,则第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果判断不是,则将该屏幕滑动事件传递到第二视图。
[0032]可见,通过这种针对视图分层的方式,屏幕滑动事件不会被多个滚动视图控件同时判定。通过为不同的滚动视图控件设置不同的视图,可以将滚动视图控件处理事件的顺序分开。从而上下滑动和左右滑动会被各自的滚动视图控件分别识别处理,而不会出现误识别的问题。
[0033]在上述方法流程中,还可以设置第二视图作为第二滚动视图控件的父容器;当第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件,如果是,则由第二滚动视图控件处理该屏幕滑动事件。
[0034]优选地,第二滚动视图控件所对应的屏幕滑动事件与第一滚动视图控件所对应的屏幕滑动事件的滑动方向正交,从而特别适于处理左右滑动和上下滑动同时可能存在的情况。
[0035]优选地,还可以设置第三视图和位于第二视图下面的第三视图,其中第三视图作为第三滚动视图控件的父容器。当第二视图接收从第一视图传递到的屏幕滑动事件,并判断该屏幕滑动事件不是由第二滚动视图控件所对应的屏幕滑动事件时,可以将该屏幕滑动事件传递到第三视图。然后,第三视图接收从第二视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第三滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第三滚动视图控件处理该屏幕滑动事件。
[0036]本领域技术人员可以意识到,还可以继续类似设置第四视图、第五视图等等,本发明实施方式对此并无限定。
[0037]可见,本发明实施方式通过视图分层的方式,针对屏幕滑动事件的识别进行隔离。每个滚动视图控件可以单独对各自的屏幕滑动事件进行拦截处理,从而实现了将不同的滚动视图控件的拦截判断放在不同的视图上面,因此减少屏幕滑动事件误识别率的发生。
[0038]在一个实施方式中,第一滚动视图控件为对应于左右滑动的滚动视图控件,此时判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为左右滑动。同时,第二滚动视图控件为对应于上下滑动的滚动视图控件,此时判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为上下滑动。
[0039]图2为根据本发明实施方式的最上层为左右滑动滚动视图控件的层次结构图。
[0040]由图2可见,本发明实施方式分为两层,第一层(即屏幕的最上面层)包括左右滑动的滚动视图控件以及作为该左右滑动的滚动视图控件的父容器的第一视图;在第一层下面还具有第二层,第二层包括上下滑动的滚动视图控件以及作为该上下滑动的滚动视图控件的父容器的第二视图。第一视图是左右滑动的滚动视图控件的容器视图,而且是该左右滑动滚动视图控件的委托者。
[0041]当用户手指在屏幕上进行滑动时,按照屏幕滑动事件的传递顺序,将由第一层的第一视图首先接收该屏幕滑动事件。第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件(即判断是否为左右滑动),如果是,则由第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0042]第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件(即判断是否为上下滑动),如果是,则由所述第二滚动视图控件处理该屏幕滑动事件。
[0043]在一个实施方式中,第一滚动视图控件为对应于上下滑动的滚动视图控件,此时判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为上下滑动。同时,第二滚动视图控件为对应于左右滑动的滚动视图控件,此时判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为左右滑动。
[0044]图3为根据本发明实施方式的最上层为上下滑动滚动视图控件的层次结构图。
[0045]由图3可见,本发明实施方式分为两层,第一层(即屏幕的最上面层)包括上下滑动的滚动视图控件以及作为该上下滑动的滚动视图控件的父容器的第一视图;在第一层下面还具有第二层,第二层包括左右滑动的滚动视图控件以及作为该左右滑动的滚动视图控件的父容器的第二视图。第一视图是上下滑动的滚动视图控件的容器视图,而且是该上下滑动滚动视图控件的委托者。
[0046]当用户手指在屏幕上进行滑动时,按照屏幕滑动事件的传递顺序,将由第一层的第一视图首先接收该屏幕滑动事件。第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件(即判断是否为上下滑动),如果是,则由第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0047]第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件(即判断是否为左右滑动),如果是,则由所述第二滚动视图控件处理该屏幕滑动事件。
[0048]本发明实施方式尤其适合于针对智能终端的屏幕滑动事件的识别处理。其中,智能终端可以包括但是不局限于:功能手机、智能手机、掌上电脑、个人电脑(PC)、车载电脑、平板电脑或个人数字助理(PDA),等等。[0049]以上虽然详细罗列了智能终端以及智能终端操作系统的具体实例,本领域人员可以意识到,这些罗列仅是阐述目的,并不用于限定本发明实施方式的保护范围。
[0050]智能终端可以适用于任意的智能终端操作系统,具体可以采用的操作系统包括但是不局限于:安卓(Andorid)、Palm OS、Symbian (塞班)、Windowsmobile、Linux、Android(安卓)、iPhone (苹果)0S、Black Berry (黑莓)OS 6.0> Windows Phone 系列,等等。
[0051]优选地,智能终端具体可以采用安卓操作系统,而且智能终端可以采用到Andorid的各个版本之中,包括但是不局限于:阿童木(Android Beta)、发条机器人(Android1.0)、纸杯蛋糕(Android 1.5)、甜甜圈(Android 1.6)、松饼(Android2.0/2.1),冻酸奶(Android 2.2)、姜饼(Android 2.3)、蜂巢(Android 3.0)、冰激凌三明治(Android 4.0)、果冻豆(Jelly Bean,Android 4.1)等版本。以上详细罗列了 Android平台的具体版本,本领域技术人员可以意识到,本发明实施方式并不局限于上述罗列版本,而还可以适用于其他基于Android软件架构的任意版本之中。
[0052]基于上述详细分析,本发明实施方式还提出了一种滑动识别装置。
[0053]图4为根据本发明实施方式的滑动识别装置结构图。
[0054]如图4所示,该装置包括:视图设置单元401和第一视图处理单元402。其中:
[0055]视图设置单元401,用于设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;
[0056]第一视图处理单元402,用于使能第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
[0057]优选地,该装置进一步包括第二视图处理单元403。
[0058]视图设置单元401,进一步用于设置第二视图作为第二滚动视图控件的父容器;
[0059]第二视图处理单元403,用于使能第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第二滚动视图控件处理该屏幕滑动事件。
[0060]优选地,第二滚动视图控件所对应的屏幕滑动事件与第一滚动视图控件所对应的屏幕滑动事件的滑动方向正交,从而特别适于处理左右滑动和上下滑动同时可能存在的情况。
[0061]在一个实施方式中,第一滚动视图控件为对应于左右滑动的滚动视图控件;第一视图处理单元402,用于判断该屏幕滑动事件是否为左右滑动;第二滚动视图控件为对应于上下滑动的滚动视图控件,第二视图处理单元403,用于判断该屏幕滑动事件是否为上下滑动。
[0062]在一个实施方式中,所述第一滚动视图控件为对应于上下滑动的滚动视图控件,第一视图处理单元402,用于判断该屏幕滑动事件是否为上下滑动;所述第二滚动视图控件为对应于左右滑动的滚动视图控件,第二视图处理单元403,用于判断该屏幕滑动事件是否为左右滑动。
[0063]可以将图4所示装置集成到各种通信网络的硬件实体当中。比如,可以将本发明实施方式的滑动识别装置集成到:功能手机、智能终端、掌上电脑、个人电脑(PC)、平板电脑或个人数字助理(PDA),等等设备之中。
[0064]实际上,可以通过多种形式来具体实施本发明实施方式所提出的滑动识别方法和装置。比如,可以遵循一定规范的应用程序接口,将滑动识别方法编写为安装到移动终端中的插件程序,也可以将其封装为应用程序以供用户自行下载使用。当编写为插件程序时,可以将其实施为ocx、dll、cab等多种插件形式。也可以通过Flash插件、RealPlayer插件、MMS插件、MIDI五线谱插件、ActiveX插件等具体技术来实施本发明实施方式所提出的滑动识别方法。
[0065]可以通过指令或指令集存储的储存方式将本发明实施方式所提出的滑动识别方法存储在各种存储介质上。这些存储介质包括但是不局限于:软盘、光盘、DVD、硬盘、闪存、U 盘、CF 卡、SD 卡、MMC 卡、SM 卡、记忆棒(Memory Stick)、xD 卡等。
[0066]另外,还可以将本发明实施方式所提出的滑动识别方法应用到基于闪存(Nandflash)的存储介质中,比如U盘、CF卡、SD卡、SDHC卡、MMC卡、SM卡、记忆棒、xD卡等。
[0067]综上所述,在本发明实施方式中,设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器;第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。由此可见,应用本发明实施方式之后,实现了多个滚动视图控件的屏幕滑动事件的分别识别处理,防止多个滚动视图控件同时识别屏幕滑动事件所导致的误识别的问题,从而提高了屏幕滑动事件识别成功率。
[0068]另外,可以将本发明实施方式可以应用到各种终端中,可以跨平台跨终端使用本发明实施方式,适用范围非常广泛。
[0069]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种滑动识别方法,其特征在于,该方法包括: 设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器; 第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
2.根据权利要求1所述的滑动识别方法,其特征在于,该方法进一步包括:设置第二视图作为第二滚动视图控件的父容器; 第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第二滚动视图控件处理该屏幕滑动事件。
3.根据权利要求2所述的滑动识别方法,其特征在于,所述第一滚动视图控件为对应于左右滑动的滚动视图控件,所述判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为左右滑动; 所述第二滚动视图控件为对应于上下滑动的滚动视图控件,所述判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为上下滑动。
4.根据权利要求2所述的滑动识别方法,其特征在于,所述第一滚动视图控件为对应于上下滑动的滚动视图控件,所述判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为上下滑动; 所述第二滚动视图控件为对应于左右滑动的滚动视图控件,所述判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件为:判断该屏幕滑动事件是否为左右滑动。
5.根据权利要求2所述的滑动识别方法,其特征在于,所述第二滚动视图控件所对应的屏幕滑动事件与第一滚动视图控件所对应的屏幕滑动事件的滑动方向正交。
6.一种滑动识别装置,其特征在于,包括视图设置单元和第一视图处理单元,其中: 视图设置单元,用于设置第一视图和位于第一视图下面的第二视图,其中第一视图作为第一滚动视图控件的父容器; 第一视图处理单元,用于使能第一视图接收屏幕滑动事件,判断该屏幕滑动事件是否为第一滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第一滚动视图控件处理该屏幕滑动事件并停止传递屏幕滑动事件,如果不是,将该屏幕滑动事件传递到第二视图。
7.根据权利要求6所述的滑动识别装置,其特征在于,进一步包括第二视图处理单元; 视图设置单元,进一步用于设置第二视图作为第二滚动视图控件的父容器; 第二视图处理单元,用于使能第二视图接收从第一视图传递到的屏幕滑动事件,判断该屏幕滑动事件是否为第二滚动视图控件所对应的屏幕滑动事件,如果是,则由所述第二滚动视图控件处理该屏幕滑动事件。
8.根据权利要求7所述的滑动识别装置,其特征在于,所述第一滚动视图控件为对应于左右滑动的滚动视图控件;第一视图处理单元,用于判断该屏幕滑动事件是否为左右滑动;所述第二滚动视图控件为对应于上下滑动的滚动视图控件;第二视图处理单元,用于判断该屏幕滑动事件是否为上下滑动。
9.根据权利要求7所述的滑动识别装置,其特征在于,所述第一滚动视图控件为对应于上下滑动的滚动视图控件;第一视图处理单元,用于判断该屏幕滑动事件是否为上下滑动; 所述第二滚动视图控件为对应于左右滑动的滚动视图控件;第二视图处理单元,用于判断该屏幕滑动事件是否为左右滑动。
10.根据权利要求7所述的滑动识别装置,其特征在于,第二滚动视图控件所对应的屏幕滑动事件与第一滚动视图控件所对应的屏幕滑动事件的滑动方向正交。
【文档编号】G06F3/0484GK103838502SQ201210477037
【公开日】2014年6月4日 申请日期:2012年11月22日 优先权日:2012年11月22日
【发明者】刘庆刚 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1