CN114579033A - 安卓平台的手势切换方法、装置、设备及存储介质 - Google Patents

安卓平台的手势切换方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114579033A
CN114579033A CN202210477746.6A CN202210477746A CN114579033A CN 114579033 A CN114579033 A CN 114579033A CN 202210477746 A CN202210477746 A CN 202210477746A CN 114579033 A CN114579033 A CN 114579033A
Authority
CN
China
Prior art keywords
touch
gesture
interaction
signal
type
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
Application number
CN202210477746.6A
Other languages
English (en)
Other versions
CN114579033B (zh
Inventor
唐向阳
杨书鉴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Big Head Brothers Technology Co Ltd
Original Assignee
Shenzhen Big Head Brothers Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Big Head Brothers Technology Co Ltd filed Critical Shenzhen Big Head Brothers Technology Co Ltd
Priority to CN202210477746.6A priority Critical patent/CN114579033B/zh
Publication of CN114579033A publication Critical patent/CN114579033A/zh
Application granted granted Critical
Publication of CN114579033B publication Critical patent/CN114579033B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04883Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text

Abstract

本发明涉及界面手势分析领域,公开了一种安卓平台的手势切换方法、装置、设备及存储介质。该方法包括:初始化交互类型的坐标,得到交互类型的初始化坐标;接收手势触控信号;判断手势的触控类型是否为抬起触控;若为非抬起触控时,则将触控坐标赋值给手势交互类型的坐标;若为抬起触控时,则判断手势触控信号对应的交互类型是否为主手指交互;若为主手指交互,则判断手势触控信号是否为最后的手指交互信号;若为最后的手指交互信号,则结束手势的交互过程;若不为,则将触控坐标赋值给新的主手指交互对应坐标;若不为主手指交互,则判断手势触控信号是否为最后的手指交互信号;若不为,则将触控坐标赋值给新的次手指交互对应坐标。

Description

安卓平台的手势切换方法、装置、设备及存储介质
技术领域
本发明涉及界面手势分析领域,尤其涉及一种安卓平台的手势切换方法、装置、设备及存储介质。
背景技术
随着安卓系统的普及,越来越多的智能设备采用安卓的触摸操作系统。众多人员在安卓系统平台上进行改进,使得安卓内部的触摸手势处理在更多场景下得到应用,丰富了大众的交互内容,例如双击亮屏、S型滑动截屏、滑动解锁等手势使得交互变得简洁。
由于安卓sdk内部只提供了几种简单的触摸事件处理方式。导致难以实现一些复杂手势和多种手势组合,并且处理过程通常只能响应一种手势处理逻辑,如:单手指滑动过程中加入一手指想要缩放是不行的,必须要抬起手指后再按下两个手指。这种割裂的手势操作在一些场景下难以提供优质的用户体验,需要一种技术解决安卓平台的手势切换较为割裂响应迟缓的问题。
发明内容
本发明的主要目的在于解决安卓平台的手势切换较为割裂响应迟缓的技术问题。
本发明第一方面提供了一种安卓平台的手势切换方法,包括步骤:
初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
判断所述手势的触控类型是否为抬起触控;
若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
若为最后的手指交互信号,则结束手势的交互过程;
若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
可选的,在本发明第一方面的第一种实现方式中,所述非抬起触控包括:按压触控、滑动触控。
可选的,在本发明第一方面的第二种实现方式中,所述若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标包括:
若手势的触控类型不为抬起触控时,则判断所述非抬起触控是否为滑动触控;
若非抬起触控不为滑动触控,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
若非抬起触控为滑动触控,则获取所述手势触控信号的触控坐标,基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理,以及识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标。
可选的,在本发明第一方面的第三种实现方式中,在所述获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标之后,在所述将所述触控坐标赋值给新的主手指交互对应坐标之后,在所述将所述触控坐标赋值给新的次手指交互对应坐标之后,还包括:
基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理。
可选的,在本发明第一方面的第四种实现方式中,所述识别所述手势触控信号对应的交互类型,得到手势交互类型包括:
判断所述手势触控信号对应的交互类型是否为主手指交互;
若为主手指交互,则将主手指交互确定为手势交互类型;
若不为主手指交互,则将次手指交互确定为手势交互类型。
可选的,在本发明第一方面的第五种实现方式中,所述若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号包括:
判断预置触控界面是否存在触控点击;
若触控界面存在触控点击,则手势触控信号不为最后的手指交互信号;
若触控界面不存在触控点击,则手势触控信号为最后的手指交互信号。
可选的,在本发明第一方面的第六种实现方式中,所述若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号包括:
判断预置触控界面是否存在未定义的触控点击;
若存在未定义的触控点击,则将所述未定义的触控点击确定为新的次手指交互;
若不存在未定义的触控点击,则将所述手势触控信号确定为最后的手指交互信号。
本发明第二方面提供了一种安卓平台的手势切换装置,包括:
初始化模块,用于初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
分析模块,用于接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
第一判断模块,用于判断所述手势的触控类型是否为抬起触控;
第一赋值模块,用于若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
第二判断模块,用于若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
第三判断模块,用于若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
结束模块,用于若为最后的手指交互信号,则结束手势的交互过程;
第二赋值模块,用于若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
第四判断模块,用于若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
第三赋值模块,用于若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
本发明第三方面提供了一种安卓平台的手势切换设备,包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;所述至少一个处理器调用所述存储器中的所述指令,以使得所述安卓平台的手势切换设备执行上述的安卓平台的手势切换方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的安卓平台的手势切换方法。
在本发明实施例中,通过定义主手指交互和次手指交互的触控逻辑,在抬起触控、按压触控、滑动触控的切换上使用坐标赋值与类型判断方式,将三种触控方式融合在一起,实现了安卓平台的手势的迅速切换和平滑过渡。
附图说明
图1为本发明实施例中安卓平台的手势切换方法的一个实施例示意图;
图2为本发明实施例中安卓平台的手势切换装置的一个实施例示意图;
图3为本发明实施例中安卓平台的手势切换装置的另一个实施例示意图;
图4为本发明实施例中安卓平台的手势切换设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种安卓平台的手势切换方法、装置、设备及存储介质。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中安卓平台的手势切换方法的一个实施例包括:
101、初始化预置交互类型的坐标,得到交互类型的初始化坐标,其中,交互类型包括:主手指交互、次手指交互;
102、接收手势触控信号,以及分析手势触控信号,得到手势的触控类型,其中,触控类型包括:非抬起触控、抬起触控;
103、判断手势的触控类型是否为抬起触控;
在101-103步骤中,在1个手指触摸过程中允许随时加入第2个手指并响应。在多个手指触摸过程中允许随时抬起任一手指,并保持事件处理连续。在2个手指触摸过程中允许随时加入任意数量手指,使其不影响2指处理,并保持事件处理连续。定义主手指:actionIndex为0的手指,定义次手指:actionIndex 为 pointerCoun t-1的手指,由于通常情况需要计算从点击到移动后位置的距离,因此对于手指分别定义了点击时的坐标和滑动后的坐标。将主手指交互横轴坐标定义为majorDownX,将主手指交互纵轴坐标定义为majorDownY,次手指交互的横轴坐标定义为minorDownX,次手指交互的纵轴坐标定义为minorDownY,上次事件/初始化的主手指交互横轴坐标定义为beforemajorX,上次事件/初始化的主手指交互的纵轴坐标定义为beforemajorY,上次事件/初始化的次手指交互横轴坐标定义为beforeminorX,上次事件/初始化的次手指交互纵轴坐标定义为beforeminorY。事件类型为 ACTION_DOWN 和 ACTION_POINTER_DOWN 时初始化上述参数。
伪代码如下:
If(cofiq=ViewConfiguration.get(v.context)#表示初始化的条件为触控信号#
majorDownX=event.x #表示定义初始化坐标为触控坐标
majorDownY=event.y #表示定义初始化坐标为触控坐标
beforemajorX=majorDownX #表示触控坐标设置为上次事件
beforemajorY=majorDownY #表示触控坐标设置为上次事件
isinslop=true
Consumed=onStgart(event)
Val actionIndex:int=event.actionIndex # 定义触发事件和参数
If(actionIndex==0{
marjorDownX=event.x
marjorDownY=event.y
beforemajorX=marjorDownX
beforemajorY=marjorDownY
}else if (actionIndex== lastPointerIndex){ #触发点击事件认定为触发事件,产生触控坐标
}
minorDownX=event.getx(actionIndex)
minorDownY=event.gety(actionIndex)
beforeminorX=minorDownX
beforeminorY=minorDownY
})
初始化数据以及数据更新后,对手势的触控类型判断是否为非抬起触控,判断手段是现有技术,在此不做赘述。
104、若手势的触控类型不为抬起触控时,则获取手势触控信号的触控坐标,识别手势触控信号对应的交互类型,得到手势交互类型,以及将触控坐标赋值给手势交互类型的坐标;
在本实施例中,触控类型是非抬起触控,则先读取手势触控信号的触控坐标,也就是event.getx和event.gety,识别手势触控信号对应的交互类型,得到手势交互类型,以及将触控坐标赋值给手势交互类型的坐标,可以采用如下伪代码处理:
}
minorDownX=event.getx(actionIndex)#坐标替换
minorDownY=event.gety(actionIndex)#坐标替换
beforeminorX=minorDownX #坐标更新
beforeminorY=minorDownY #坐标更新
})。
进一步的,非抬起触控包括:按压触控、滑动触控,在此基础上,104可以执行以下步骤:
1041、若手势的触控类型不为抬起触控时,则判断非抬起触控是否为滑动触控;
1042、若非抬起触控不为滑动触控,则获取手势触控信号的触控坐标,识别手势触控信号对应的交互类型,得到手势交互类型,以及将触控坐标赋值给手势交互类型的坐标;
1043、若非抬起触控为滑动触控,则获取手势触控信号的触控坐标,基于交互类型的初始化坐标和触控坐标,对预置视图进行更新处理,以及识别手势触控信号对应的交互类型,得到手势交互类型,以及将触控坐标赋值给手势交互类型的坐标。
在1041-1043步骤中,先进行判断是不是滑动触控,如果不是滑动触控,可以参考如下的触控坐标赋值给手势交互类型的坐标方式:
else if (actionIndex== lastPointerIndex){ #触发点击事件认定为触发事件,产生触控坐标
}
minorDownX=event.getx(actionIndex)
minorDownY=event.gety(actionIndex)
beforeminorX=minorDownX
beforeminorY=minorDownY
})
而如果事件类型为滑动触控 ,则需要对before的数据进行修改,也即使上一次坐标数据进行修改。先获取手势触控信号的触控坐标,然后不是进行坐标赋值,而是先对预置视图进行更新处理。
伪代码如下:
MotionEvent.ACTION_MOVE->{
if(performLongClick.consumedLongCLick){
flingHandLer.cancel()
returntrue
}
flingHandLer.onMove(event)
if(isInSLop)isInSlop=onSLop(event)
consumed=isInSlopI|when{
pointerCount==1->onMove(event)
pointerCount>1->onTransform(event)
else->false
}
beforeMaiorx=event.x #坐标更新过程
beforeMajorY=event.y #坐标更新过程
beforeMinorx=event.getX(lastPointerIndex) #坐标更新过程
beforeMinorY=event.getY(lastPointerIndex) #坐标更新过程
checkcLICKSLOp(V)
}
此时即可确保在手指按下抬起期间进行的触摸事件处理参数是连续的,因此上层在使用这些参数进行事件处理时即可做到连贯和流畅。
进一步的,在104的“识别手势触控信号对应的交互类型,得到手势交互类型”可以执行以下步骤:
1044、判断手势触控信号对应的交互类型是否为主手指交互;
1045、若为主手指交互,则将主手指交互确定为手势交互类型;
1046、若不为主手指交互,则将次手指交互确定为手势交互类型。
在1044-1046步骤中,手势触控信号的交互类型只能是主手指交互或者是次手指交互,分析一次即可,不需进行多次分析。
105、若手势的触控类型为抬起触控时,则获取手势触控信号的触控坐标,判断手势触控信号对应的交互类型是否为主手指交互;
106、若为主手指交互,则判断手势触控信号是否为最后的手指交互信号;
107、若为最后的手指交互信号,则结束手势的交互过程;
108、若不为最后的手指交互信号,则查询出新的主手指交互,将触控坐标赋值给新的主手指交互对应坐标;
109、若不为主手指交互,则判断手势触控信号是否为最后的手指交互信号;
110、若不为最后的手指交互信号,则查询出新的次手指交互,将触控坐标赋值给新的次手指交互对应坐标。
在105-110步骤中,在事件类型为ACTION_POINTER_UP时,先判断交互类型是否为主手指交互,如果是主手指交互,则需要再进一步分析是否为最后的手指交互信号,如果是最后的手指交互信号,则认为整个屏幕都没有点击过程不需要再进行相关交互,而如果不是最后的手指交互信号,则使用actionIndex+1的手指作为主手指并重新初始化主手指相关参数。
如果不是主手指交互,认定是次手指交互,判断次手指交互是否为最后的手指交互信号,如果是最后的手指交互信号,则不需要任何处理,而如果不是,则使用pointerCount-2的手指作为次手指名重新初始化次手指相关参数。
具体的伪代码如下:
if(actionIndex== 0){ #手势触控信号认定为触发事件,产生触控坐标
}
marjorDownX=event.getx(pointerIndex:actionIndex+1)
marjorDownY=event.gety(pointerIndex:actionIndex+1)
beforemarjorX=marjorDownX
beforemarjorY=marjorDownY
}else if(actionIndex== lastPonterIndex){
minorDownX=event.getx(pointerIndex:actionIndex-1)
minorDownY=event.gety(pointerIndex:actionIndex-1)
beforemarjorX=minorDownX
beforemarjorY=minorDownY
}
进一步的,106可以执行以下步骤:
1061、判断预置触控界面是否存在触控点击;
1062、若触控界面存在触控点击,则手势触控信号不为最后的手指交互信号;
1063、若触控界面不存在触控点击,则手势触控信号为最后的手指交互信号。
在1061-1063步骤中,主要是对主手指交互判断是否为最后的手指交互信号,直接查看触控界面是否存在触控点击即可,因为整个界面是先有主手指交互后有次手指交互,如果只剩主手指交互、次手指交互,主手指交互抬起,则会将次手指交互重新定义为主手指交互。
进一步的,109可以执行以下步骤:
1091、判断预置触控界面是否存在未定义的触控点击;
1092、若存在未定义的触控点击,则将未定义的触控点击确定为新的次手指交互;
1093、若不存在未定义的触控点击,则将手势触控信号确定为最后的手指交互信号。
在1061-1063步骤中,主要是对次手指交互判断是否为最后的手指交互信号,次手指交互需要找到未被定义为minorDownX、minorDownY、majorDownX、majorDownY的触控点击,将该触控点击确定为次手指交互,而没有未定义的触控点击,将手势触控信号确定为最后的手指交互信号。
进一步的,在104之后,在108之后,在110之后,还需要执行以下步骤:
1101、基于交互类型的初始化坐标和触控坐标,对预置视图进行更新处理。
在本实施例中,minorDownX、minorDownY、majorDownX、majorDownY和beforemarjorX、beforemarjorY、beforeminorX、beforeminorX之间是需要进行界面处理运算,对预置视图进行更新处理,完成手势交互的最后步骤。
在本发明实施例中,通过定义主手指交互和次手指交互的触控逻辑,在抬起触控、按压触控、滑动触控的切换上使用坐标赋值与类型判断方式,将三种触控方式融合在一起,实现了安卓平台的手势的迅速切换和平滑过渡。
上面对本发明实施例中安卓平台的手势切换方法进行了描述,下面对本发明实施例中安卓平台的手势切换装置进行描述,请参阅图2,本发明实施例中安卓平台的手势切换装置一个实施例,所述安卓平台的手势切换装置包括:
初始化模块201,用于初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
分析模块202,用于接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
第一判断模块203,用于判断所述手势的触控类型是否为抬起触控;
第一赋值模块204,用于若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
第二判断模块205,用于若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
第三判断模块206,用于若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
结束模块207,用于若为最后的手指交互信号,则结束手势的交互过程;
第二赋值模块208,用于若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
第四判断模块209,用于若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
第三赋值模块210,用于若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
在本发明实施例中,通过定义主手指交互和次手指交互的触控逻辑,在抬起触控、按压触控、滑动触控的切换上使用坐标赋值与类型判断方式,将三种触控方式融合在一起,实现了安卓平台的手势的迅速切换和平滑过渡。
请参阅图3,本发明实施例中安卓平台的手势切换装置的另一个实施例包括:
所述安卓平台的手势切换装置包括:
初始化模块201,用于初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
分析模块202,用于接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
第一判断模块203,用于判断所述手势的触控类型是否为抬起触控;
第一赋值模块204,用于若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
第二判断模块205,用于若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
第三判断模块206,用于若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
结束模块207,用于若为最后的手指交互信号,则结束手势的交互过程;
第二赋值模块208,用于若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
第四判断模块209,用于若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
第三赋值模块210,用于若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
其中,所述非抬起触控包括:按压触控、滑动触控,所述第一赋值模块204具体用于:
若手势的触控类型不为抬起触控时,则判断所述非抬起触控是否为滑动触控;
若非抬起触控不为滑动触控,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
若非抬起触控为滑动触控,则获取所述手势触控信号的触控坐标,基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理,以及识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标。
其中,所述安卓平台的手势切换装置还包括视图更新模块211,所述视图更新模块211具体用于:
基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理。
其中,所述第一赋值模块204还具体用于:
判断所述手势触控信号对应的交互类型是否为主手指交互;
若为主手指交互,则将主手指交互确定为手势交互类型;
若不为主手指交互,则将次手指交互确定为手势交互类型。
其中,所述第三判断模块206具体用于:
判断预置触控界面是否存在触控点击;
若触控界面存在触控点击,则手势触控信号不为最后的手指交互信号;
若触控界面不存在触控点击,则手势触控信号为最后的手指交互信号。
其中,所述第四判断模块209具体用于:
判断预置触控界面是否存在未定义的触控点击;
若存在未定义的触控点击,则将所述未定义的触控点击确定为新的次手指交互;
若不存在未定义的触控点击,则将所述手势触控信号确定为最后的手指交互信号。
在本发明实施例中,通过定义主手指交互和次手指交互的触控逻辑,在抬起触控、按压触控、滑动触控的切换上使用坐标赋值与类型判断方式,将三种触控方式融合在一起,实现了安卓平台的手势的迅速切换和平滑过渡。
上面图2和图3从模块化功能实体的角度对本发明实施例中的安卓平台的手势切换装置进行详细描述,下面从硬件处理的角度对本发明实施例中安卓平台的手势切换设备进行详细描述。
图4是本发明实施例提供的一种安卓平台的手势切换设备的结构示意图,该安卓平台的手势切换设备400可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)410(例如,一个或一个以上处理器)和存储器420,一个或一个以上存储应用程序433或数据432的存储介质430(例如一个或一个以上海量存储设备)。其中,存储器420和存储介质430可以是短暂存储或持久存储。存储在存储介质430的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对安卓平台的手势切换设备400中的一系列指令操作。更进一步地,处理器410可以设置为与存储介质430通信,在安卓平台的手势切换设备400上执行存储介质430中的一系列指令操作。
基于安卓平台的手势切换设备400还可以包括一个或一个以上电源440,一个或一个以上有线或无线网络接口450,一个或一个以上输入输出接口460,和/或,一个或一个以上操作系统431,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图4展示的安卓平台的手势切换设备结构并不构成对基于安卓平台的手势切换设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述安卓平台的手势切换方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统或装置、单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种安卓平台的手势切换方法,其特征在于,包括步骤:
初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
判断所述手势的触控类型是否为抬起触控;
若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
若为最后的手指交互信号,则结束手势的交互过程;
若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
2.根据权利要求1所述的安卓平台的手势切换方法,其特征在于,所述非抬起触控包括:按压触控、滑动触控。
3.根据权利要求2所述的安卓平台的手势切换方法,其特征在于,所述若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标包括:
若手势的触控类型不为抬起触控时,则判断所述非抬起触控是否为滑动触控;
若非抬起触控不为滑动触控,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
若非抬起触控为滑动触控,则获取所述手势触控信号的触控坐标,基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理,以及识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标。
4.根据权利要求3所述的安卓平台的手势切换方法,其特征在于,在所述获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标之后,在所述将所述触控坐标赋值给新的主手指交互对应坐标之后,在所述将所述触控坐标赋值给新的次手指交互对应坐标之后,还包括:
基于所述交互类型的初始化坐标和所述触控坐标,对预置视图进行更新处理。
5.根据权利要求1所述的安卓平台的手势切换方法,其特征在于,所述识别所述手势触控信号对应的交互类型,得到手势交互类型包括:
判断所述手势触控信号对应的交互类型是否为主手指交互;
若为主手指交互,则将主手指交互确定为手势交互类型;
若不为主手指交互,则将次手指交互确定为手势交互类型。
6.根据权利要求1所述的安卓平台的手势切换方法,其特征在于,所述若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号包括:
判断预置触控界面是否存在触控点击;
若触控界面存在触控点击,则手势触控信号不为最后的手指交互信号;
若触控界面不存在触控点击,则手势触控信号为最后的手指交互信号。
7.根据权利要求1所述的安卓平台的手势切换方法,其特征在于,所述若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号包括:
判断预置触控界面是否存在未定义的触控点击;
若存在未定义的触控点击,则将所述未定义的触控点击确定为新的次手指交互;
若不存在未定义的触控点击,则将所述手势触控信号确定为最后的手指交互信号。
8.一种安卓平台的手势切换装置,其特征在于,所述安卓平台的手势切换装置包括:
初始化模块,用于初始化预置交互类型的坐标,得到所述交互类型的初始化坐标,其中,所述交互类型包括:主手指交互、次手指交互;
分析模块,用于接收手势触控信号,以及分析所述手势触控信号,得到手势的触控类型,其中,所述触控类型包括:非抬起触控、抬起触控;
第一判断模块,用于判断所述手势的触控类型是否为抬起触控;
第一赋值模块,用于若手势的触控类型不为抬起触控时,则获取所述手势触控信号的触控坐标,识别所述手势触控信号对应的交互类型,得到手势交互类型,以及将所述触控坐标赋值给所述手势交互类型的坐标;
第二判断模块,用于若手势的触控类型为抬起触控时,则获取所述手势触控信号的触控坐标,判断所述手势触控信号对应的交互类型是否为主手指交互;
第三判断模块,用于若为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
结束模块,用于若为最后的手指交互信号,则结束手势的交互过程;
第二赋值模块,用于若不为最后的手指交互信号,则查询出新的主手指交互,将所述触控坐标赋值给新的主手指交互对应坐标;
第四判断模块,用于若不为主手指交互,则判断所述手势触控信号是否为最后的手指交互信号;
第三赋值模块,用于若不为最后的手指交互信号,则查询出新的次手指交互,将所述触控坐标赋值给新的次手指交互对应坐标。
9.一种安卓平台的手势切换设备,其特征在于,所述安卓平台的手势切换设备包括:存储器和至少一个处理器,所述存储器中存储有指令,所述存储器和所述至少一个处理器通过线路互连;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述安卓平台的手势切换设备执行如权利要求1-7中任一项所述的安卓平台的手势切换方法。
10.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-7中任一项所述的安卓平台的手势切换方法。
CN202210477746.6A 2022-05-05 2022-05-05 安卓平台的手势切换方法、装置、设备及存储介质 Active CN114579033B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210477746.6A CN114579033B (zh) 2022-05-05 2022-05-05 安卓平台的手势切换方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210477746.6A CN114579033B (zh) 2022-05-05 2022-05-05 安卓平台的手势切换方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114579033A true CN114579033A (zh) 2022-06-03
CN114579033B CN114579033B (zh) 2023-04-14

Family

ID=81785555

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210477746.6A Active CN114579033B (zh) 2022-05-05 2022-05-05 安卓平台的手势切换方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114579033B (zh)

Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070247435A1 (en) * 2006-04-19 2007-10-25 Microsoft Corporation Precise selection techniques for multi-touch screens
US20100020025A1 (en) * 2008-07-25 2010-01-28 Intuilab Continuous recognition of multi-touch gestures
WO2011150607A1 (zh) * 2010-05-31 2011-12-08 中兴通讯股份有限公司 一种自动识别手势的方法及移动终端
CN102339192A (zh) * 2010-07-19 2012-02-01 联想(北京)有限公司 电子设备及其显示处理方法
CN102541319A (zh) * 2010-12-20 2012-07-04 联想(北京)有限公司 电子设备及其显示处理方法
CN102566908A (zh) * 2011-12-13 2012-07-11 鸿富锦精密工业(深圳)有限公司 电子设备及其页面缩放方法
TW201239716A (en) * 2011-03-30 2012-10-01 Edamak Corp Method for detecting multi-object behavior of a proximity-touch detection device
US20140071171A1 (en) * 2012-09-12 2014-03-13 Alcatel-Lucent Usa Inc. Pinch-and-zoom, zoom-and-pinch gesture control
CN103914441A (zh) * 2014-03-13 2014-07-09 何峰 利用手势在触摸屏上进行文档编辑的方法
US20160370844A1 (en) * 2015-06-19 2016-12-22 Intel Corporation Techniques to control computational resources for an electronic device
US20170336962A1 (en) * 2016-05-19 2017-11-23 Beijing Xiaomi Mobile Software Co., Ltd. Gesture response method and device
CN108363542A (zh) * 2018-03-13 2018-08-03 北京硬壳科技有限公司 基于悬浮触控的内容交互方法和装置
CN109408138A (zh) * 2018-09-26 2019-03-01 浙江万朋教育科技股份有限公司 一种使用手势操作切换客户端启动环境及配置参数的方法
CN111427500A (zh) * 2020-03-20 2020-07-17 Oppo广东移动通信有限公司 触摸屏手势操作控制方法、装置、终端设备以及存储介质

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070247435A1 (en) * 2006-04-19 2007-10-25 Microsoft Corporation Precise selection techniques for multi-touch screens
US20100020025A1 (en) * 2008-07-25 2010-01-28 Intuilab Continuous recognition of multi-touch gestures
WO2011150607A1 (zh) * 2010-05-31 2011-12-08 中兴通讯股份有限公司 一种自动识别手势的方法及移动终端
CN102339192A (zh) * 2010-07-19 2012-02-01 联想(北京)有限公司 电子设备及其显示处理方法
CN102541319A (zh) * 2010-12-20 2012-07-04 联想(北京)有限公司 电子设备及其显示处理方法
TW201239716A (en) * 2011-03-30 2012-10-01 Edamak Corp Method for detecting multi-object behavior of a proximity-touch detection device
CN102566908A (zh) * 2011-12-13 2012-07-11 鸿富锦精密工业(深圳)有限公司 电子设备及其页面缩放方法
US20140071171A1 (en) * 2012-09-12 2014-03-13 Alcatel-Lucent Usa Inc. Pinch-and-zoom, zoom-and-pinch gesture control
CN103914441A (zh) * 2014-03-13 2014-07-09 何峰 利用手势在触摸屏上进行文档编辑的方法
US20160370844A1 (en) * 2015-06-19 2016-12-22 Intel Corporation Techniques to control computational resources for an electronic device
US20170336962A1 (en) * 2016-05-19 2017-11-23 Beijing Xiaomi Mobile Software Co., Ltd. Gesture response method and device
CN108363542A (zh) * 2018-03-13 2018-08-03 北京硬壳科技有限公司 基于悬浮触控的内容交互方法和装置
CN109408138A (zh) * 2018-09-26 2019-03-01 浙江万朋教育科技股份有限公司 一种使用手势操作切换客户端启动环境及配置参数的方法
CN111427500A (zh) * 2020-03-20 2020-07-17 Oppo广东移动通信有限公司 触摸屏手势操作控制方法、装置、终端设备以及存储介质

Also Published As

Publication number Publication date
CN114579033B (zh) 2023-04-14

Similar Documents

Publication Publication Date Title
EP2638452B1 (en) Resolving merged touch contacts
WO2015143865A1 (zh) 应用场景的识别方法、功耗管理方法、装置及终端设备
US20140089824A1 (en) Systems And Methods For Dynamically Altering A User Interface Based On User Interface Actions
US20210256077A1 (en) Methods, devices and computer-readable storage media for processing a hosted application
US11726802B2 (en) Robust user interface related robotic process automation
JPH0823805B2 (ja) 情報入力装置
CN107608609B (zh) 一种事件对象发送方法与装置
CN104303145A (zh) 根据应用的转化配置文件将触摸输入转化成本地输入
JP2021504823A (ja) 入力操作処理方法、処理装置およびコンピュータ読み取り可能な記憶媒体
CN112988185A (zh) 云应用更新方法、装置、系统、电子设备及存储介质
CN116306396A (zh) 芯片验证方法及装置、设备和介质
CN110795162A (zh) 生成容器镜像文件的方法和装置
CN114138363A (zh) 程序数据调用方法、装置、设备及存储介质
CN114579033B (zh) 安卓平台的手势切换方法、装置、设备及存储介质
CN113391749A (zh) 鼠标点击模拟方法、装置、计算机可读存储介质、电子设备
CN106302125A (zh) 一种对请求信息进行响应的方法、装置及系统
CN115981542A (zh) 一种触摸屏的智能交互触摸控制方法、系统、设备及介质
CN110276038A (zh) 一种数据处理方法
CN106897012A (zh) 用户指令识别及处理方法、装置
CN111596962A (zh) 一种基于高速协议通道的实时微内核系统及其初始化方法
CN109948251B (zh) 基于cad的数据处理方法、装置、设备及存储介质
CN111752682A (zh) 一种网络端口资源管理方法、装置及电子设备和存储介质
WO2015016623A1 (ko) 웹 브라우저의 화면 표시 방법
CN108415656B (zh) 虚拟场景中的显示控制方法、装置、介质及电子设备
JP2001265726A (ja) コンピュータ作業負荷の高速リカバリおよび再配置を可能にする自動化アプリケーションおよび手順

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 518000 Building 1901, 1902, 1903, Qianhai Kexing Science Park, Labor Community, Xixiang Street, Bao'an District, Shenzhen, Guangdong Province

Applicant after: Shenzhen Flash Scissor Intelligent Technology Co.,Ltd.

Address before: 518000 Unit 9ABCDE, Building 2, Haihong Industrial Plant Phase II, Haihong Industrial Plant, West Side of Xixiang Avenue, Labor Community, Xixiang Street, Bao'an District, Shenzhen, Guangdong

Applicant before: Shenzhen big brother Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant