CN116048357A - 移动终端的控制方法及移动终端 - Google Patents
移动终端的控制方法及移动终端 Download PDFInfo
- Publication number
- CN116048357A CN116048357A CN202210898267.1A CN202210898267A CN116048357A CN 116048357 A CN116048357 A CN 116048357A CN 202210898267 A CN202210898267 A CN 202210898267A CN 116048357 A CN116048357 A CN 116048357A
- Authority
- CN
- China
- Prior art keywords
- interface
- mobile terminal
- roller
- application
- input device
- 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
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000005096 rolling process Methods 0.000 claims abstract description 76
- 230000004044 response Effects 0.000 claims abstract description 40
- 238000004891 communication Methods 0.000 claims description 42
- 238000012795 verification Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 10
- 230000001960 triggered effect Effects 0.000 claims description 9
- 238000001914 filtration Methods 0.000 claims description 3
- 238000012545 processing Methods 0.000 abstract description 28
- 230000006870 function Effects 0.000 description 68
- 230000008569 process Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 15
- 238000007726 management method Methods 0.000 description 14
- 238000013461 design Methods 0.000 description 13
- 238000010295 mobile communication Methods 0.000 description 12
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004806 packaging method and process Methods 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 206010044565 Tremor Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供一种移动终端的控制方法及移动终端,涉及移动终端技术领域。本申请中移动终端响应于用户对鼠标滚轮的滚动操作,将该滚动操作对应的滚轮事件转换为相应的触摸事件。由于移动终端上的一般应用均支持触摸事件,因此,移动终端便可以基于该触摸事件以及移动终端显示的应用界面所支持的控制功能,对该应用界面进行相应的控制操作,该控制操作包括下拉刷新界面、上拉加载界面和界面切换中的任一操作,实现滚轮事件的成功响应,并且提高了界面控制功能的多样性,满足用户的使用需求。同时,由于是基于触摸事件对应用界面进行控制操作,使得研发人员无需为该应用界面所属的应用程序添加处理滚轮事件的业务逻辑,减少研发人员的工作量。
Description
技术领域
本申请涉及移动终端技术领域,尤其涉及一种移动终端的控制方法及移动终端。
背景技术
随着移动终端技术的发展,移动终端(例如,手机)被广泛应用在工作生活中。在一些场景中(例如,手机投屏到电脑),为了更方便地控制移动终端,可以使移动终端外接鼠标,以通过鼠标的滚轮控制移动终端的界面显示情况。
目前,在通过滚轮控制移动终端的界面时,可以通过上下滚动滚轮来控制移动终端的界面的上下移动,实现界面上下移动的控制功能。
然而,发明人发现现有技术中至少存在如下问题:在通过滚轮控制移动终端的界面时,仅能够实现界面上下移动的控制功能,导致实现的界面控制功能较为单一,无法满足用户的使用需求。
发明内容
有鉴于此,本申请提供了一种移动终端的控制方法及移动终端,解决在通过滚轮控制移动终端时,实现的界面控制功能单一的技术问题。
第一方面,本申请提供一种移动终端的控制方法,该移动终端与输入设备建立了连接,该输入设备具备滚轮;该输入设备用于通过所述滚轮控制所述移动终端。该方法包括:该移动终端显示第一界面;其中,该第一界面为该移动终端上的应用程序中的一个应用界面;
在用户滚动输入设备的滚轮时,该移动终端响应于用户对该输入设备的第一操作,将该第一操作转换为相应的触摸指令,并基于该触摸指令滑动该第一界面显示第二界面,该第一操作为用户对该输入设备的滚轮的滚动操作,该第二界面与该第一界面部分相同或不同。
在用户继续滚动输入设备的滚轮时,该移动终端响应于用户对该输入设备的第二操作,将该第二操作转换为相应的触摸指令,并基于该触摸指令滑动该第二界面显示第三界面,其中,该第二操作为用户对该输入设备的所述滚轮的滚动操作,该第三界面与该第二界面部分相同或不同,该第三界面与该第一界面不同。
在本申请实施例中,由于移动终端上的一般应用程序均支持触摸指令(即触摸事件),即应用程序均存在处理触摸指令的业务逻辑。因此,在用户通过输入设备的滚轮控制移动终端上的界面时,如果用户滚动了输入设备的滚轮,移动终端可以先将用户对滚轮的滚动操作转换成相应的触摸指令。之后,移动终端基于第一界面所支持的控制功能,也即根据该第一界面对应的处理触摸指令的业务逻辑,利用该触摸指令对该第一界面进行相应的控制操作(例如,滑动操作、界面切换等),得到相应的第二界面,使得该第二界面与该第一界面部分相同或完全不同。之后,该移动终端显示该第二界面,实现触摸指令的成功响应,也即实现滚轮的滚动操作的成功响应。如果用户继续滚动了输入设备的滚轮,移动终端可以也将用户对该滚轮的滚动操作转换为相应的触摸指令。之后,移动终端基于该第二界面所支持的控制功能,利用该触摸指令对该第二界面相应的控制操作(例如,移动操作、界面切换、下拉刷新、上拉加载等),得到相应的第三界面,使得该第三界面与该第一界面不同。本申请实施例中移动终端通过将滚轮的滚动操作转换成相应的触摸指令,使得不仅能够通过滚轮实现移动终端的界面的上下滑动,即上下移动的控制功能,也可以实现界面的下拉刷新、界面切换(即翻页)以及上拉加载等界面控制功能,保证通过滚轮实现的界面控制功能丰富多样,满足用户的使用需求。
在一种可能的设计中,移动终端中的输入事件过滤inputfilter模块将上述滚轮的滚动操作转换成相应的触摸指令,该inputfilter模块处于应用程序框架层,位于应用程序层之下,因此,应用程序层中的应用程序可以在仅感知到触摸指令,而不感知滚轮的滚动操作(即滚轮操作)的情况下,便能够实现滚轮的滚动操作的成功响应,因此,移动终端的应用程序也无需添加处理滚轮操作的业务逻辑,研发人员也无需对应于程序进行适配,减少研发人员的工作量。
在一种可能的设计中,第一界面或第二界面的滑动距离与滚轮的滚动幅度存在对应关系,也即第一界面或第二界面的移动速度与滚轮的滚动速度存在对应关系。当滚轮的滚动速度越快时,第一界面的移动速度越快;当滚轮的滚动速度越慢时,第一界面的移动速度越慢,使得移动终端移动界面的情况与滚轮的滚动情况一致,使得用户可以根据界面的移动需求,控制滚动滚轮的情况,提高用户的使用体验。
在一种可能的设计中,上述第一界面、第二界面和第三界面均支持下拉刷新功能。该第一界面、第二界面和第三界面均包括滚动视图控件,滚动视图控件用于显示对应界面中的多个界面元素;该界面元素可以为列表项,该界面元素之间的排列顺序包括上下排列;该第二界面中的该滚动视图控件中的处于最上方的界面元素滚动至该滚动视图控件的顶部位置;该第二操作指示触发所述第二界面向下滑动;该第一操作指示触发第一界面向下滑动。
上述响应于用户对所述输入设备的第一操作,移动终端显示第二界面,包括:
移动终端响应于上述第一操作,向下移动该第一界面中的滚动视图控件中的界面元素,显示第二界面。
相应的,上述响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,包括:
移动终端响应于上述第二操作,刷新该第二界面中的滚动视图控件中的界面元素,得到第三界面,并显示该第三界面,该第三界面中滚动视图控件中的界面元素与该第二界面中滚动视图控件中的界面元素均不相同,该第三界面中滚动视图控件中的界面元素与该第一界面中滚动视图控件中的界面元素也均不相同。
在本申请实施例中,如果第一界面和第二界面支持下拉刷新功能,例如,第一界面、第二界面为新闻类应用中的界面,则在第一界面的滚动视图控件中的界面元素滑动至该滚动视图控件的顶部位置时,即在该第一界面下拉至顶部时,也即在得到显示第二界面后,移动终端可以基于指示触发该第二界面向下移动的滚轮的滚动操作(即第二操作),刷新第二界面的界面内容,也即刷新该第二界面中的滚动视图控件中的界面元素(例如,刷新第二界面显示的新闻内容),从而使得可以通过滚动滚轮实现移动终端的界面的下拉刷新功能。
在一种可能的设计中,上述第一界面、第二界面和第三界面均支持上拉加载功能。该第一界面、第二界面和第三界面均包括滚动视图控件,滚动视图控件用于显示对应界面中的多个界面元素;该界面元素可以为列表项,该界面元素之间的排列顺序包括上下排列;该第二界面中的该滚动视图控件中的处于最下方的界面元素滚动至该滚动视图控件的底部位置;该第二操作指示触发所述第二界面向上滑动。该第一操作指示触发第一界面向上滑动。
上述响应于用户对所述输入设备的第一操作,移动终端显示第二界面,包括:
移动终端响应于上述第一操作,向上移动该第一界面中的滚动视图控件中的界面元素,显示第二界面。
相应的,上述响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,包括:
移动终端响应于上述第二操作,在该第二界面中滚动视图控件中加载新的界面元素,得到第三界面,并显示得到该第二界面,该第三界面中的滚动视图控件中的界面元素与该第二界面中的滚动视图控件中的界面元素部分相同,该第三界面中的滚动视图控件中的界面元素与该第一界面中的滚动视图控件中的界面元素可以均不相同或者部分相同。
在本申请实施例中,如果第一界面、第二界面等界面支持上拉加载功能,例如,第一界面为购物类应用中的界面,则在第一界面的滚动视图控件中的界面元素滑动至该滚动视图控件的底部位置时,即在该第一界面上拉至底部时,也即在得到显示第二界面后,移动终端可以基于指示触发该第二界面向上移动的滚轮的滚动操作,加载新的内容,即加载新的界面元素,使得滚动视图控件能够显示更多的界面元素(例如,加载新的商品),从而使得可以通过滚动滚轮实现移动终端的界面的上拉加载功能。
在一种可能的设计中,上述第一界面、第二界面和第三界面均支持界面切换功能。该第一界面中的界面元素为预设元素列表中的第一界面元素;
在上述第一操作指示触发该第一界面向上移动的情况下,上述移动终端可以响应于该第一操作,切换显示包括第二界面元素的第二界面,该第二界面元素为该预设元素列表中该第一界面元素的下一个界面元素。
在第一操作指示触发该第一界面向下移动的情况下,上述移动终端可以响应于该第二操作,切换显示包括第三界面元素的第二界面,该第三界面元素为该预设元素列表中该第一界面元素的上一个界面元素。
同理,
在上述第二操作指示触发该第二界面向上移动的情况下,上述移动终端可以响应于该第二操作,切换显示包括第四界面元素的第三界面,该第四界面元素为该预设元素列表中的该第二界面中的界面元素的下一个界面元素。
在第二操作指示触发该第二界面向下移动的情况下,上述移动终端可以响应于该第二操作,切换显示包括第五界面元素的第三界面,该第五界面元素为该预设元素列表中该第二界面中的界面元素的上一个界面元素。
在本申请实施例中,如果第一界面和第二界面支持界面切换功能,例如,第一界面和第二界面为短视频应用中的界面,则移动终端可以基于用户对滚轮的滚动操作,切换显示该第一界面或该第二界面中的界面元素的下一界面元素或上一界面元素,例如,显示下一个视频或上一个视频,使得可以通过滚动滚轮实现界面切换功能。
在一种可能的设计中,上述界面元素包括以下的至少一个:视频、文本和图像。
在一种可能的设计中,上述响应于用户对该输入设备的第二操作,该移动终端显示第三界面,包括:
该移动终端响应于该第二操作,将滚轮指令转换为触摸指令;其中,该滚轮指令是基于该第二操作生成的;
该移动终端基于该触摸指令对该第二界面执行相应的控制操作,并显示对该第二界面执行控制操作后得到的第三界面。该控件操作包括上述移动操作、下拉刷新、上拉加载和界面切换中的任一操作。
示例性的,在该输入设备与该移动终端直接连接的情况下,上述滚轮指令可以是该移动终端响应于用户对滚轮的滚动操作生成的;在该输入设备与该移动终端间接连接的情况下,例如,移动终端投屏至电子设备(如电脑),输入设备与该电子设备通信连接,则上述滚轮指令可以是该电子设备响应于用户对滚轮的滚动操作生成的。并且该电子设备在生成该滚轮事件后,将该滚轮指令传输至该移动终端。
本申请实施例中,由于移动终端上的一般应用程序均支持触摸指令,也即应用程序均存在处理触摸指令的业务逻辑。因此,在用户通过输入设备的滚轮控制移动终端上的界面时,如果用户滚动了输入设备的滚轮,移动终端可以在得到基于该滚轮的滚动操作生成的滚轮指令(即滚轮事件)后,先将该滚轮指令转换为触摸指令。之后,移动终端基于第二界面所支持的控制功能,也即根据该第二界面对应的处理触摸指令的业务逻辑,利用该触摸指令对该第二界面进行相应的控制操作,例如,下拉刷新界面、上拉加载界面或者切换界面等,实现触摸指令的成功响应,从而实现滚轮指令的成功响应,使得能够通过滚轮实现移动终端的界面的下拉刷新、翻页以及上拉加载等界面控制功能,保证通过滚轮实现的界面控制功能丰富多样,满足用户的使用需求。
在一种可能的设计中,上述移动终端将滚轮指令转换为移动终端的触摸指令,包括:
该移动终端获取该滚轮指令中的第一参数;其中,该第一参数指示该滚轮的滚动操作在该第二界面上的操作参数;该第一参数相当于用户通过手指滑动移动终端显示屏来触发移动终端对第二界面进行上述控制操作时,移动终端所需利用的触摸参数。
利用预设触摸指令格式和该第一参数,将该滚轮指令转换为该触摸指令;其中,预设触摸指令格式与该移动终端的触摸指令的数据格式相同。
在本申请实施例中,移动终端从滚轮指令中获取生成触摸指令所需利用的参数(即第一参数),并基于预设触摸指令格式(即预设触摸事件格式),对所述第一参数进行封装,以得到移动终端的触摸指令,实现滚轮指令到触摸指令的转换。
在一种可能的设计中,上述第一参数包括上述滚轮的滚动方向、该滚轮的滚动速度和光标位置中的至少一个;该光标位置指示上述输入设备对应的光标在上述移动终端的屏幕上的位置;
其中,该光标位置对应上述触摸指令中的触摸点位置,该滚轮的滚动方向对应该触摸指令所触发的界面移动方向,即界面滑动方向,该滚轮的滚动速度对应该触摸指令所触发的界面移动速度,即界面滑动速度。
示例性的,上述界面移动方向指示的方向与上述滚动方向所指示的方向相反(如滚轮向上滚动时,界面向下移动)或相同(如滚轮向上滚动时,界面向上移动);
上述界面移动速度与上述滚轮的滚动速度之间具有一定的映射关系(如滚轮的滚动速度越快,界面移动的速度越快;滚轮的滚动速度越慢,界面移动的速度越慢);
上述光标位置相当于用户通过手指滑动移动终端的显示屏时,手指所在位置,也即上述触摸点位置。
在本申请实施例中,由于触摸指令中的参数是已知的,可以根据滚轮指令中的第一参数确定触摸指令中的相应的参数,从而将该用户对滚轮的滚动操作转换为用户对移动终端的显示屏的滑动操作。例如,移动终端可以通过滚轮指令中的滚轮的滚动方向确定该滑动操作对应的滑动方向,也即确定界面移动方向;又例如,移动终端可以通过滚轮指令对应的滚轮的滚动速度确定该滑动操作对应的滑动速度,也即确定界面移动速度;又例如,移动终端可以根据移动终端上显示的光标位置确定该滑动操作对应的触摸点位置。
在一种可能的设计中,上述触摸指令包括1个按下down指令、n个移动move指令和1个抬起up指令;其中,该n为大于或等于0的整数;
上述基于预设触摸指令格式和第一参数,将滚轮指令转换为移动终端的触摸指令,包括:
利用上述预设触摸指令格式指示的down指令的数据格式,对上述光标位置对应的触摸点位置进行封装,可以生成该down指令;
利用上述预设触摸指令格式指示的move指令的数据格式,对上述滚轮的滚动方向对应的界面移动方向、上述滚轮的滚动速度对应的界面移动速度和所述光标位置对应的触摸点位置进行封装,可以生成该move指令;
利用上述预设触摸指令格式指示的up指令的数据格式,对上述光标位置对应的触摸点位置进行封装,可以生成该up指令。
在本申请实施例中,一个完整的触摸指令一般是由一个按下down指令(即事件)、n个移动move指令和一个up指令这三种基础触摸指令组成。移动终端在将滚轮指令转换为触摸指令时,可以先将滚轮指令中的第一参数转换为触摸指令所需的触摸参数,然后基于预设触摸指令格式,对该触摸参数进行封装,可以得到相应的down指令、move指令和up指令。
示例性的,移动终端可以将一个滚轮指令转换为周期是预设周期的一组基础触摸指令,该一组基础触摸指令为一个触摸指令。基础触摸指令之间的间隔时间为预设间隔时间。换言之,触摸指令包括的基础触摸指令的数目是固定的。
在一种可能的设计中,上述移动终端响应于用户对该输入设备的第一操作,显示第二界面,包括:
该移动终端可以响应于上述第一操作,在确定上述第一界面所属的应用程序属于合法应用的情况下,显示该第二界面。
在本申请实施例中,移动终端在接收到第一操作,也即得到滚轮指令后,先查找该滚轮指令对应的目标应用,也即确定该移动终端显示的第一界面所属的应用程序。然后,移动终端确定该目标应用,即该第一界面所属的应用程序是否属于合法应用,也即确定该应用程序是否允许响应滚轮指令。在确定该应用程序属于合法应用的情况下,表明该应用程序允许响应滚轮指令,则移动终端对该第一界面执行相应的控制操作。
其中,上述移动终端在确定上述应用程序是否属于合法应用时,可以基于预设校验方式,对该应用程序进行合法性校验,得到校验结果;其中,该校验结果指示所述应用程序是否为合法应用;该合法应用指示允许响应滚轮的滚动操作的应用程序;该预设校验方式包括白名单校验方式和/或权限校验方式。
在本申请实施例中,移动终端可以基于白名单校验方式和/或权限校验方式,对第一界面所属的应用程序进行合法性校验,得到该应用程序对应的校验结果。移动终端可以根据该校验结果确定该应用程序是否允许响应滚轮事件,即确定该应用程序是否为合法应用,实现应用程序的合法性的判断。
在一种可能的设计中,上述输入设备包括鼠标。
第二方面,本申请提供一种移动终端,所述移动终端包括存储器、显示屏、通信模块和一个或多个处理器;所述存储器、所述显示屏、所述通信模块与所述处理器耦合;其中,所述通信模块用于与输入设备通信,所述显示屏用于显示所述处理器生成的图像,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述移动终端执行如上述第一方面中任一项所述的移动终端的控制方法。
第三方面,本申请提供一种通信系统,包括移动终端和输入设备。所述移动终端与所述输入设备建立了连接;所述输入设备具备滚轮;
所述输入设备,用于接收用户对所述输入设备的第一操作,并响应于所述第一操作,生成第一数据包;其中,所述第一操作为对所述输入设备的所述滚轮的滚动操作,所述第一数据包包括所述滚轮的滚动方向和/或所述滚轮的滚动幅度;
所述输入设备,还用于将所述第一数据包发送至所述移动终端;
所述移动终端,用于显示第一界面,接收所述输入设备发送的第一数据包,并将所述第一数据包转换成第一触摸指令,以及响应于所述第一触摸指令,显示第二界面;其中,所述第一界面为所述移动终端上的应用程序中的应用界面,所述第二界面为所述第一界面经滑动后显示的界面,所述第二界面与所述第一界面部分相同或不同;
所述输入设备,用于接收用户对所述输入设备的第二操作,并响应于所述第二操作,生成第二数据包;其中,所述第二操作为对所述输入设备的所述滚轮的滚动操作;
所述输入设备,还用于将所述第二数据包发送至所述移动终端;
所述移动终端,用于接收所述输入设备发送的第二数据包,并将所述第二数据包转换成第二触摸指令,以及响应于所述第二触摸指令,显示第三界面;其中,所述第三界面为所述第二界面经滑动后显示的界面,所述第三界面与所述第二界面部分相同或不同,所述第三界面与所述第一界面不同。
第四方面,本申请提供一种计算机可读存储介质,包括计算机指令,当所述计算机指令在移动终端上运行时,使得所述移动终端执行如上述第一方面中任一项所述的移动终端的控制方法。
第五方面,本申请提供一种计算机程序产品,包括计算机程序,当所述计算机程序在移动终端上运行时,使得所述移动终端执行如上述第一方面中任一项所述的移动终端的控制方法。
可以理解地,上述提供的第二方面所述的移动终端,第三方面所述的通信系统,第四方面所述的计算机存储介质,第五方面所述的计算机程序产品所能达到的有益效果,可参考第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种移动终端的硬件结构示意图;
图2为本申请实施例提供的一种移动终端的软件结构示意图;
图3为本申请实施例提供的一种下拉刷新的界面示意图;
图4为本申请实施例提供的一种上拉加载的界面示意图;
图5为本申请实施例提供的一种移动终端的控制方法的应用场景示意图一;
图6为本申请实施例提供的一种移动终端的控制方法的应用场景示意图二;
图7为本申请实施例提供的一种移动终端的控制方法的应用场景示意图三;
图8为本申请实施例提供的一种移动终端的控制方法的应用场景示意图四;
图9为本申请实施例提供的一种移动终端的控制方法的应用场景示意图五;
图10为本申请实施例提供的一种移动终端的控制方法的应用场景示意图六;
图11为本申请实施例提供的一种移动终端的控制方法的应用场景示意图七;
图12为本申请实施例提供的一种移动终端的控制方法的应用场景示意图八;
图13为本申请实施例提供的一种移动终端的控制方法的应用场景示意图九;
图14为本申请实施例提供的一种移动终端的控制方法的应用场景示意图十;
图15为本申请实施例提供的一种移动终端的控制方法的流程示意图;
图16为本申请实施例提供的一种触摸事件的示意图;
图17为本申请实施例提供的一种事件传递过程的示意图一;
图18为本申请实施例提供的一种事件传递过程的示意图二。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
图1示出了移动终端100的结构示意图。如图1所示,移动终端100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块111,电源管理模块112,电池113,天线1,天线2,移动通信模块140,无线通信模块150,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏160,以及用户标识模块(subscriber identificationmodule,SIM)卡接口195等。
可以理解的是,本发明实施例示意的结构并不构成对移动终端100的具体限定。在本申请另一些实施例中,移动终端100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(applicationprocessor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是移动终端100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括通用串行总线USB接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为移动终端100充电,也可以用于移动终端100与外围设备之间传输数据。也可以用于连接外部输入设备(例如,鼠标、键盘)。其中,鼠标包括无线鼠标、有线鼠标等。
充电管理模块111用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块111可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块111可以通过移动终端100的无线充电线圈接收无线充电输入。充电管理模块111为电池113充电的同时,还可以通过电源管理模块112为移动终端供电。
移动终端100的无线通信功能可以通过天线1,天线2,移动通信模块140,无线通信模块150,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。移动终端100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块140可以提供应用在移动终端100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块140可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块140可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块140还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块140的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块140的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏160显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块140或其他功能模块设置在同一个器件中。
无线通信模块150可以提供应用在移动终端100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块150可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块150经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块150还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,移动终端100的天线1和移动通信模块140耦合,天线2和无线通信模块150耦合,使得移动终端100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code divisionmultipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(longterm evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(globalpositioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
示例性的,在本申请实施例中,移动终端100可以通过无线通信模块150与外部输入设备建立无线连接。外部输入设备可以通过该无线通信模块150向移动终端100传输控制命令,以实现对该移动终端100的无线控制。当然,移动终端100可以外部输入设备也可以进行有线连接。例如,移动终端100的USB接口130可以用于连接外部输入设备。
移动终端100通过GPU,显示屏160,以及应用处理器等实现显示功能。
显示屏160用于显示图像,视频等。在一些实施例中,移动终端100可以包括1个或N个显示屏160,N为大于1的正整数。
移动终端100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏160以及应用处理器等实现拍摄功能。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行移动终端100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储移动终端100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
移动终端100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
以下实施例中的方法均可以在具有上述硬件结构的移动终端100中实现。
在一些实施例中,移动终端100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的安卓(AndroidTM)系统为例,示例性说明移动终端100的软件结构。
图2是本申请实施例提供的移动终端100的软件结构框图。分层架构可将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将AndroidTM系统分为四层,从上至下分别为应用程序层,应用程序框架(framework)层,安卓运行时(AndroidTM runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括短视频类应用程序、邮件类应用程序、音乐类应用程序、购物类应用程序、社交类应用程序、直播类应用程序等。鼠标当前页面的可滑动区域。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括java模块和原生(native)模块。
java模块包括视图系统、窗口管理器、内容提供器、资源管理器、通知管理器和输入事件过滤(inputfilter)模块。视图系统包括可视组件(即view组件),view组件表示应用界面中的基本的组成元素,其在屏幕中占据一个矩形区域,并且负责界面绘制和用户操作的事件响应。在一些实施例中,视图系统可用于构建应用程序。应用界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕,获取光标的位置等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标(如鼠标的光标所对应的图标),图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,移动终端振动,指示灯闪烁等。
inputfilter模块用于对输入事件(例如,触屏事件、滚轮事件)进行过滤,即确定是否需要应用程序层中的应用程序处理输入事件。
native模块是通过c++语言实现的,其包括输入事件读取(inputreader)模块和输入事件分发(inputdispatcher)模块。inputreader模块负责读取输入设备驱动产生的输入事件。inputdispatcher模块负责输入事件的分发。
AndroidTM runtime包括核心库和虚拟机。AndroidTMruntime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动、输入/输出设备驱动(例如,键盘、触摸屏、鼠标、扬声器、麦克风等)。
其中,用户对输入设备进行输入操作(例如,滚动滚轮操作),移动终端100的内核层可以根据输入操作产生相应的输入事件(如滚轮事件(wheelevent)),并向上层上报输入事件。
在一些实施例中,移动终端100还包括输入事件管理服务(inputmanagerservice),inputmanagerservice包括上述inputreader模块、inputdispatcher模块和inputfilter模块,inputmanagerservice负责对外部输入设备对应的输入事件管理的服务。
为了更好的理解本申请的方案,以下介绍本申请实施例所涉及的术语。
(1)下拉刷新:在将移动终端的应用界面的可滑动区域(即滚动视图控件)下拉到最上位置后,即在将应用界面下拉到顶部后,继续在触摸屏上向下滑动(如图3所示),可以触发应用界面的刷新。其中,下拉刷新功能被应用在购物类应用程序、音乐类应用程序、邮件类应用程序、社交类应用程序等应用程序中。
(2)翻页:也称为切换。在触摸屏上进行上下滑动能够切换应用界面,例如,在向上滑动时,切换到下一应用界面;又例如,在向下滑动时,切换到上一应用界面。其中,翻页功能被应用在短视频类应用程序、直播类应用程序、阅读类应用程序等应用程序中。
(3)自动加载:也称为上拉加载,在将应用界面的可滑动区域上拉到最下位置后,即在将应用界面上拉到底部后,继续在触摸屏上向上滑动(如图4所示),可以触发应用界面继续加载新的内容(即新的界面元素),其中,下拉刷新功能被应用在购物类应用程序、音乐类应用程序、邮件类应用程序、社交类应用程序等应用程序中。
在一些实现方式中,移动终端可以外接鼠标等输入设备。当用户使用输入设备控制移动终端的界面时,可以通过上下滑动输入设备上的滚轮,来控制界面上下移动,然而,无法实现其它常用的界面控制功能(例如,下拉刷新、上拉加载、切换等),无法满足用户使用需求。
一般而言,用户通过在移动终端的触摸屏上滑动触发界面控制功能一般包括下拉刷新、上拉加载以及切换功能。为了使用户在使用外部输入设备的滚轮控制移动终端情况下,也可以实现该界面控制功能,本申请提供一种通过输入设备的滚轮控制移动终端上的界面的方案。具体的,假设移动终端外接了鼠标等可以通过滚轮控制移动终端的输入设备。在移动终端显示的应用界面支持下拉刷新功能的情况下,若应用界面已经下拉至顶部,当用户继续向上滚动滚轮时,移动终端控制应用界面的刷新,使得通过滚动滚轮实现界面的下拉刷新功能。在移动终端显示的应用界面支持切换功能的情况下,当用户向上或向下滚动滚轮时,移动终端切换到显示的应用界面的上一界面或下一界面,使得通过滚动滚轮实现界面的切换功能。在移动终端显示的应用界面支持上拉加载功能的情况下,若应用界面已经上拉到底部,当用户继续向下滚动滚轮时,移动终端控制应用界面继续加载新的内容,使得通过滚动滚轮实现界面的上拉加载功能。可见,基于本申请所提供的方案,可以通过滚轮实现移动终端的界面的下拉刷新、翻页以及上拉加载等界面控制功能,使得通过滚轮实现的界面控制功能丰富多样,满足用户的使用需求。
示例性的,本申请实施例中的移动终端可以是手机、平板电脑、可穿戴设备、个人数字助理(personal digital assistant,PDA)等具备触摸屏,并可以外接上述输入设备的设备,本申请实施例对该移动终端的具体形态不作特殊限制。其中,输入设备包括具备滚轮部件的设备,例如,鼠标。
本申请中的移动终端基于输入设备的滚轮的滚动操作,生成相应的滚轮事件,并将该滚轮事件转换为应用程序均支持的触摸事件,使得手机上的应用程序通过响应触摸事件,实现滚轮事件的响应,并且可以通过响应滚轮事件,实现不同的界面控制功能,保证界面控制功能的丰富性。
下面将以移动终端为手机,输入设备为鼠标,该鼠标与手机建立了无线连接(如蓝牙连接)为例,对本申请的技术方案的应用场景进行说明。
在一种场景中,用户可以操作鼠标控制手机实现应用程序的界面下拉刷新功能。例如,手机可以显示图5所示的应用程序的界面501。手机连接了鼠标后,则表示用户可以通过鼠标的滚轮控制手机当前所显示界面的下拉功能。
手机显示图5所示的界面501时,手机响应于用户对鼠标滚轮的上滚操作(即上滑操作),可以控制应用程序的界面向下移动,显示图5所示的应用程序的界面503。并且,如图5所示,随着应用程序的界面向下移动,手机所显示的界面501中的滚动条502可以随之上滑(如手机显示界面503中的滚动条502)。并且手机所显示的界面中的界面元素510以及界面元素511逐渐下滑,该界面元素511慢慢消失在屏幕上(如手机显示界面503中的界面元素510以及界面元素511)。同时,新的界面元素逐渐显示在屏幕上(如手机显示界面503中的界面元素513)。最后,该新的界面元素完全显示在屏幕上,即完全出现在界面上(如手机显示界面504中的界面元素513),此时,该界面也被下拉至顶部(如手机显示界面504)。
假设手机显示图5或图6所示的界面504时,手机应用程序的界面被下拉至顶部。此时,若用户仍继续向上滚动鼠标的滚轮,则手机响应于用户对滚轮的上滚操作,可以手机对界面进行刷新,以实现下拉刷新的功能。
示例性的,手机显示图6所示的界面504,手机应用程序的界面被下拉至顶部。此时,如果用户继续向上滚动鼠标的滚轮,手机响应于用户对鼠标滚轮的上滚操作,可以刷新应用程序的界面,显示图6所示的应用程序的界面505。图6所示的应用程序的界面505中,可以发出提示信息“下拉刷新,松手释放”。之后,如果用户停止滚动滚轮(如图6所示,用户手指离开滚轮),手机响应于用户在鼠标上停止滚动滚轮的操作,可以显示图7所示的应用程序的界面506,即刷新后的界面。该过程中的用户对鼠标滚轮的上滚操作相当于用户通过手指向下滑动手机屏幕。相应的,该过程相当于用户通过手指向下滑动屏幕时,如果手机应用程序的界面被下拉至顶部,用户继续通过手指向下滑动屏幕,手机响应于该手指的下滚操作,可以刷新应用程序的界面(如图7所示)。
应理解,下拉刷新操作的具体触发条件与应用有关。例如,一些应用程序需要在界面下拉距离顶部一定距离后,即该界面的可滑动区域与该顶部之间的距离超过第一预设距离后,才触发刷新操作。又例如,一些应用程序在其包含的界面被下拉至顶部后,如果再接收到用户对滚轮的上滚操作,便可以触发刷新操作,即刷新操作的触发条件与该距离无关。
下面将结合具体应用介绍该场景。例如,手机显示的是今日头条TM的一个界面。随着用户不断地向上滚动鼠标滚轮(相当于用户通过手指向下滑动屏幕),手机不断向下移动该界面。当该界面被下拉至顶部时,用户继续向上滚动鼠标的滚轮,手机仍向下移动该界面,该界面距离顶部一定距离,且该界面与该顶部之间显示有指示正在刷新的提示信息(如提示图标、提示文字)。此时如果用户停止滑动该滚轮(相当于用户手指停止滑动屏幕),则手机刷新该界面。又例如,手机显示的是淘宝TM的一个界面。随着用户不断地向上滚动鼠标滚轮,手机不断向下移动该界面。当该界面被下拉至顶部时,用户继续向上滚动鼠标的滚轮,手机仍向下移动该界面,该界面距离顶部一定距离,且该界面与该顶部之间显示有正在刷新中的提示信息。此时如果用户停止滑动该滚轮,则手机刷新该界面。
在另一种场景中,用户可以操作鼠标控制手机实现应用程序的界面上拉加载功能。例如,手机可以显示图8所示的应用程序的界面601。手机连接了鼠标后,则表示用户可以通过鼠标的滚轮控制手机当前所显示界面的上拉功能。
手机显示图8所示的界面601时,手机响应于用户对鼠标滚轮的下滚操作(下滑操作),可以控制应用程序的界面向上移动,显示图8所示的应用程序的界面603。并且,如图8所示,随着应用程序的界面向上移动,手机所显示的界面601中的滚动条602可以随之下滑(如手机显示界面603中的滚动条602)。并且手机所显示的界面中的界面元素610以及界面元素611逐渐上滑,该界面元素610慢慢消失在屏幕上(如手机显示界面603中的界面元素610以及界面元素611)。同时,新的界面元素逐渐显示在屏幕上(如手机显示界面603中的界面元素613)。最后,该新的界面元素完全显示在屏幕上,即出现在界面上(如手机显示界面504中的界面元素513),此时,该界面也被上拉至底部(如手机显示界面604)。
假设手机显示图8或图9所示的界面604时,手机应用程序的界面被上拉至底部。此时,若用户仍继续向下滚动鼠标的滚轮,则手机响应于用户对滚轮的下滚操作,可以手机控制界面继续加载新的内容,以实现上拉加载的功能。
示例性的,手机显示图9所示的界面604,手机应用程序的界面被上拉至底部。此时,如果用户继续向下滚动鼠标的滚轮,手机响应于用户对鼠标滚轮的下滚操作,可以控制界面继续加载新的内容,显示图9所示的应用程序的界面604。图9所示的应用程序的界面604中,可以发出提示信息“正在加载中”。之后,当新的内容加载完成后,可以显示图10所示的应用程序的界面605,即加载后的界面。该过程中的用户对鼠标滚轮的下滚操作相当于用户通过手指向上滑动手机屏幕。相应的,该过程相当于用户通过手指向上滑动屏幕时,如果手机应用程序的界面被上拉至底部,用户继续通过手指向上滑动屏幕,手机响应于该手指的上滚操作,可以加载新的内容(如图10所示)。
应理解,上拉加载操作的具体触发条件与应用有关。例如,一些应用程序需要在界面上拉距离底部一定距离后,即该界面的可滑动区域与该底部之间的距离超过第二预设距离后,才触发加载操作。又例如,另一些应用程序在其包含的界面被上拉至顶部后,如果再接收到用户对滚轮的下滚操作,便可以触发加载操作,即加载操作的触发条件与该距离无关。
下面将结合具体应用介绍该场景。例如,手机显示的是今日头条TM的一个界面。随着用户不断地向下滚动鼠标滚轮(相当于用户通过手指向上滑动屏幕),手机不断向上移动该界面。当该界面被上拉至底部时,如果用户继续向下滚动鼠标的滚轮,该界面上显示有“正在加载中”的提示信息,并且此时手机加载新的内容。又例如,手机显示的是淘宝TM的一个界面。随着用户不断地向下滚动鼠标滚轮,手机不断向上移动该界面。当该界面被上拉至底部时,如果用户继续向下滚动鼠标的滚轮,该界面上显示有“正在加载新的宝贝”的提示信息,并且此时手机加载新的内容。
在又一种场景中,用户可以操作鼠标控制手机实现应用程序的界面切换功能。例如,手机可以显示图11所示的应用程序的界面701。手机连接了鼠标后,则表示用户可以通过鼠标的滚轮控制手机当前所显示界面的切换功能。
手机显示图11所示的界面701时,手机响应于用户对鼠标滚轮的上滚操作,可以将当前界面向下移动,由于应用程序支持切换功能,则可以将显示的界面的由当前界面切换到上一界面,显示图11所示的应用程序的界面702,即切换后的界面,实现界面的向上切换功能。该过程中的用户对鼠标滚轮的上滚操作相当于用户通过手指向下滑动手机屏幕。相应的,该过程相当于用户通过手指向下滑动屏幕时,手机响应于该手指的下滚操作,切换到上一界面(如图12所示)。
手机显示图13所示的界面701时,手机响应于用户对鼠标滚轮的下滚操作,可以将当前界面向上移动,由于应用程序支持切换功能,则可以将显示的界面由当前界面切换到下一界面,显示图13所示的应用程序的界面703,即切换后的界面,实现界面的向下切换功能。该过程中的用户对鼠标滚轮的下滚操作相当于用户通过手指向上滑动手机屏幕。相应的,该过程相当于用户通过手指向尚滑动屏幕时,手机响应于该手指的上滚操作,切换到下一界面(如图14所示)。
下面将结合具体应用介绍该场景。例如,手机显示的是抖音TM的一个视频界面。该视频界面是全屏显示,因而,鼠标滚轮的滑动会导致整个界面的更新,即当用户向上滚动鼠标的滚轮(相当于用户通过手指在手机的屏幕上向下滑动)时,手机切换到上一个视频;而当用户向下滚动鼠标的滚轮(相当于用户通过手指在手机的屏幕上向上滑动)时,手机切换到下一个视频。
应理解,上述场景中的手机上的光标(如图5-图6、图8-图9以及图11、图13中的光标10)所在位置需在显示的界面的可滑动区域内。该光标所在位置相当于用户通过手指触摸滑动屏幕时手指所在位置,如果光标所在位置未在可滑动区域内,手机可能会认为滚轮事件对应的应用为其它应用(如通知栏应用),而不是手机显示的界面所属的应用,从而无法对手机显示的界面进行相应的控制操作。
需要说明,上述场景中的鼠标滚轮的滚动方向与界面上的滚动条的移动方向一致,而与界面的移动方向相反仅为一种示例,鼠标滚轮的滚动方向也可以与界面的移动方向一致,而与界面上的滚动条的移动方向相反。具体的,手机响应于滚轮的向上滑动,控制界面向上移动,而当界面上存在滚动条时,此时滚动条的向下移动;手机响应于滚轮的向下滑动,控制界面向下移动,而当界面上存在滚动条时,此时滚动条的向上移动。
以下,将结合附图对本申请实施例提供的一种移动终端的控制方法进行具体介绍。如图15所示,该方法包括以下步骤:
S801、鼠标中的控制模块接收用户对滚轮的滚动操作,并每隔预设时间,生成数据包。
其中,数据包包括在该预设时间内的滚动操作对应的参数。
一般地,滚动操作指示用户上下滚动滚轮的操作。当然,滚动操作也可以指示用户上下滚动滚轮+其它触发滚轮方式(如用户上下滚动滚轮的同时按压滚轮)的操作,该滚动操作与鼠标的类型有关,本申请不对滚动操作具体指示的操作进行限制,只需该滚动操作可以触发手机生成滚轮事件即可。
S802、上述控制模块将上述数据包发送至鼠标中的第一无线通信模块。
S803、第一无线通信模块接收上述数据包。
S804、第一无线通信模块将上述数据包发送至手机中的第二无线通信模块。
S805、第二无线通信模块接收上述数据包。
S806、第二无线通信模块将上述数据包转发至手机中的输入设备驱动。
S807、输入设备驱动根据上述数据包生成滚轮事件,并将该滚轮事件保存至特定目录。
在本申请实施例中,在用户滚动鼠标的滚轮的过程中,鼠标中的控制模块接收用户对滚轮的滚动操作,并每隔预设时间,根据用户在该预设时间内对滚轮的滚动操作生成相应的数据包。然后,该控制模块通过鼠标中的第一无线通信模块将生成的鼠标包发送至手机中的第二无线通信模块。之后,该第二无线通信模块将该数据包发送至输入设备驱动。其中,数据包包括滚轮的滚动方向和滚轮的滚动幅度等参数。
示例性的,滚轮的滚动幅度可以通过滚轮滚动的齿格数进行表示。
在本申请实施例中,响应于用户对鼠标的滚轮进行的滚动操作,在接收到鼠标发送的数据包后,首先,手机中的输入设备驱动获取数据包中的滚轮的滚动方向和滚动幅度,并获取手机上的光标位置。然后,输入设备驱动根据滚轮的滚动方向、滚动幅度和光标位置,生成相应的滚轮事件。之后,输入设备驱动将该滚轮事件保存至手机上的特定目录下。
其中,光标位置表示手机上的光标在手机屏幕上的坐标,其通过(x,y)表示。
其中,滚轮事件包括滚轮的滚动方向、滚动速度和光标位置等参数。滚动操作包括上滚操作和下滚操作。当用户对滚轮进行上滚操作时,滚轮的滚动方向为向上滚动;当用户对滚轮进行下滚操作时,滚轮的滚动方向为向下滚动。
示例性的,在生成滚轮事件时,首先,手机计算滚轮的滚动幅度和预设时间之间的比值,得到滚轮的滚动速度。接着,按照预设滚轮事件格式,生成包括滚动的滚动方向、滚动速度和光标位置等参数的滚轮事件。
其中,预设时间与鼠标对应的回报率相关,例如,当鼠标的回报率为125赫兹(hz)时,鼠标每隔8毫秒(millisecond,ms),便与手机进行一次通信。
一般而言,上述第一无线通信模块和上述第二无线通信模块指示蓝牙通信模块。为了使鼠标和手机之间能够实现蓝牙连接,手机可以响应于用户在手机上的蓝牙设置页面上的触发操作,与该鼠标进行配对连接,这里该鼠标相当于一个蓝牙设备。
S808、手机中的inputreader模块从特定目录下读取鼠标的滚轮事件。
S809、inputreader模块将滚轮事件发送至手机中的inputdispatcher模块。
在本申请实施例中,inputreader模块在从该特定目录下读取到滚轮事件后,由于inputreader模块无法分发滚轮事件,因此,inputreader模块将其发送到inputdispatcher模块,以利用inputreader模块分发滚轮事件。
其中,特定目录用于保存输入设备对应的输入事件,例如,鼠标对应的滚轮事件。
S810、inputdispatcher模块在接收到滚轮事件的情况下,将滚轮事件保存至第一消息队列中。
S811、inputdispatcher模块将第一消息队列中的滚轮事件发送至手机中的inputfilter模块。
在本申请实施例中,inputdispatcher模块在接收到滚轮事件时,将其保存至第一消息队列中。并且,inputdispatcher模块会按照先进先出顺序,识别并消费第一消息队列中的滚轮事件,即将第一消息队列中的滚轮事件发送至inputfilter模块。
其中,第一消息队列可以仅用于保存接收到的滚轮事件,也可以用于保存接收到所有事件,本申请不对其进行限制。
示例性的,inputdispatcher模块在识别事件是否为滚轮事件时,一方面,可以根据事件对应的事件标识进行识别。例如,事件标识为事件名称,当事件名称包括wheel字符时,确定该事件为滚轮事件。另一方面,可以根据事件中的参数进行识别。例如,当事件中的参数包括滚动方向和/或滚动速度时,确定该事件为滚轮事件。当然,也可以根据其它方式进行识别,本申请不对识别事件是否为滚轮事件的方式进行限定。
S812、inputfilter模块确定滚轮事件对应的目标应用,并在确定目标应用属于合法应用的情况下,将滚轮事件转换为触摸事件。其中,合法应用指示允许响应滚轮事件的应用程序。
在本申请实施例中,inputfilter模块在接收到inputdispatcher模块发送的滚轮事件后,首先,查找滚轮事件对应的目标应用,即查找需响应该滚轮事件的目标应用,换言之,确定手机屏幕显示的界面所属的应用。然后,inputfilter模块确定目标应用是否属于合法应用,即确定目标应用是否允许响应滚轮事件。一种情况下,在确定目标应用属于合法应用时,表明目标应用允许响应该滚轮事件,为了避免由于目标应用未添加滚轮事件的处理逻辑导致无法响应滚轮事件,则inputfilter模块将滚轮事件转换为目标应用可以响应的触摸事件,以保证滚轮事件可以成功得到响应,并继续将该滚轮事件返回至inputdispatcher模块,以使inputdispatcher模块进行滚轮事件的分发。
在一些实施例中,一个完整的触摸事件是由down事件、move事件和up事件这三个基础触摸事件组成。因此,inputfilter模块在将滚轮事件转换为触摸事件时,可以将滚轮事件转换为周期是预设周期的一组基础触摸事件,基础触摸事件之间的间隔时间为预设间隔时间。简单来说,用户对滚轮的滑动过程相当于用户在触摸屏上的滑动过程,手机响应于用户对滚轮的滚动操作生成的一个滚轮事件,相当于手机响应于用户对手机上的触摸屏进行滚动操作,每隔预设间隔时间,便生成一个基础触摸事件,并在经过预设周期后,将该预设周期内生成的多个基础触摸事件作为一个触摸事件。
其中,基础触摸事件指示用户在该预设间隔时间内的触摸操作。一组基础触摸事件包一个down事件、n个move事件和一个up事件。down事件指示用户手指按下操作,其表示一次触摸事件的开始。move事件指示用户手机在触摸屏上滑动。up事件指示用户手指离开触摸屏,其表示一次触摸事件的结束。该n为正整数。
举例来说,预设周期为300ms,预设间隔时间为10ms(如图16所示),inputfilter模块将一个滚轮事件转换为一个包括一个down事件、28个move事件和一个up事件的触摸事件。
在一些实施例中,在将滚轮事件转换为基础触摸事件时,首先,inputfilter模块会获取滚轮事件中的相关参数,并基于预设down事件格式,生成包括该参数的down事件,即基于该down事件格式,对该参数进行封装,得到down事件。接着,间隔预设间隔时间后,inputfilter模块获取滚轮事件中的相关参数,并基于预设move事件格式,生成包括该参数的move事件,即基于该move事件格式,对该参数进行封装,得到move事件。之后,inputfilter模块按照此生成move事件的过程,不断生成move事件。最后,inputfilter模块获取滚轮事件中的相关参数,并基于预设up事件格式,生成包括该参数的up事件,即基于该up事件格式,对该参数进行封装,得到up事件。
在一些实施例中,inputfilter模块生成down事件所利用的滚轮事件中的参数可以包括光标位置。inputfilter模块生成move事件所利用滚轮事件的参数可以包括滚动方向、滚动速度和光标位置。inputfilter模块生成up事件所利用的滚轮事件的参数可以包括光标位置。
示例性的,由于鼠标对应的光标所在位置,相当于用户通过手指滑动屏幕时,手指所在位置。因此,inputfilter模块可以将光标位置作为down事件、move事件和up事件中的触摸点位置,即触摸点坐标,也即手指在屏幕上的位置。
具体的,inputfilter模块在将滚轮事件转换生成move事件时,可以根据滚轮事件中的光标位置确定move事件中的触摸点坐标,并且可以根据滚轮事件中的滚动方向确定move事件中的滑动方向(即界面移动方向),该滑动方向表示手机上的界面移动的方向。同时,inputfilter模块还可以根据滚轮事件中的滚动速度确定move事件中的滑动速度(界面移动速度),该滑动速度表示手机上的界面移动的速度,其可以为大于或等于0的数值。例如,当用户滚动滚轮的速度较快时,手机控制界面移动的速度也较快;当用户滚动滚轮的速度较慢时,手机控制界面移动的速度也较慢,从而实现手机对用户输入的滚轮操作的正确响应,使得用户可以通过鼠标滚轮成功与手机界面进行交互。
一种实现方式中,滚轮事件中的滚动方向与触摸事件中的滑动方向指示的方向相反,即当用户对鼠标进行向下滚动操作时,手机控制界面向上移动;当用户对鼠标进行向下滚动操作时,手机控制界面向上移动。
另一种实现方式中,滚轮事件中的滚动方向与触摸事件中的滑动方向指示的方向一致,即当用户对鼠标进行向下滚动操作时,手机控制界面向下移动;当用户对鼠标进行向上滚动操作时,手机控制界面向上移动。
在一些实施例中,以滚动速度指示单位时间内滚动的齿格数为例,inputfilter模块在根据滚动速度确定滑动速度时,先查找一个齿格对应的界面移动行数,例如,界面移动行数为3,表明滚轮每滚动一个齿格,手机便控制界面在垂直方向上移动3行。然后,inputfilter模块计算界面移动行数与滚动速度的乘积,得到滑动速度,该滑动速度表示手机在单位时间内移动界面的行数。
当然,上述描述的inputfilter模块生成基础触摸事件所利用的滚轮事件中的参数仅为一种示例,inputfilter模块实际可以根据down事件、up事件和move事件的要求,从滚轮事件中获取相关参数,本申请不对其进行限定。
另一种情况下,inputfilter模块在确定目标应用不属于合法应用时,表明不允许目标应用响应滚轮事件,也即无需目标应用响应滚轮事件,则inputfilter模块对该滚轮事件进行过滤,而不再继续将该滚轮事件返回至inputdispatcher模块。
在一些实施例中,inputfilter模块可以通过预设校验方式确定目标应用是否合法。其中,预设校验方式包括白名单校验方式和/或权限校验方式。
示例性的,本申请实施例这里以inputfilter模块基于白名单校验方式对目标应用进行合法性校验为例,介绍inputfilter模块通过预设校验方式确定目标应用是否合法的方法。
首先,inputfilter模块可以获取目标应用对应的应用标识。然后,inputfilter模块可以判断目标应用对应的应用标识是否在预设白名单中,该预设白名单包括至少一个允许响应滚轮事件的应用标识。若目标应用对应的应用标识在预设白名单中,表明目标应用允许响应滚轮事件,则白名单校验方式对应的校验结果指示该目标应用合法。若该目标应用对应的应用标识未在预设白名单中,表明该目标应用不允许响应滚轮事件,则该校验结果指示该目标应用不合法。本申请实施例中,inputfilter模块可以通过判断目标应用是否属于允许响应滚轮事件的应用程序,来判断目标应用是否合法。
其中,目标应用对应的应用标识表示能够唯一代表该目标的标识,可以根据实际需求进行设置,例如,应用标识为程序名称、编号、用户身份证明(user identifition,UID)等。
示例性的,本申请实施例这里以inputfilter模块基于权限校验方式对目标应用进行合法性校验为例,介绍inputfilter模块通过预设校验方式确定目标应用是否合法的方法。
首先,inputfilter模块可以获取目标应用对应的实际权限,实际权限指示目标应用当前所具备的权限。然后,inputfilter模块判断实际权限中是否存在目标权限,该目标权限指示能够响应滚轮事件的权限。在该实际权限中存在目标权限的情况下,表明该目标应用具备响应滚轮事件的权限,则权限校验方式对应的校验结果指示目标应用合法。
在目标应用对应的实际权限中不存在目标权限的情况下,表明该目标应用不具备响应滚轮事件的权限,则权限校验方式对应的校验结果指示该目标应用不合法。本申请实施例中,inputfilter模块可以通过判断目标应用是否具备响应滚轮事件的权限,来判断目标应用是否合法。
上述实施例描述了通过一种校验方式确定目标应用是否合法的情况,当然,inputfilter模块也可以通过多种校验方式确定目标应用是否合法。当inputfilter模块基于多种校验方式,对目标应用进行合法性校验时,在每种校验方式对应的校验结果均指示目标应用合法的情况下,inputfilter模块确定该目标应用合法。在存在校验方式对应的校验结果指示目标应用不合法的情况下,确定该目标应用不合法。例如,inputfilter模块分别基于白名单校验方式和权限校验方式对目标应用进行合法性校验。inputfilter模块在白名单校验方式对应的校验结果指示目标应用合法,以及权限方式对应的校验结果指示目标应用合法的情况下,确定该目标应用合法。inputfilter模块在白名单校验方式对应的校验结果指示目标应用不合法,或者权限方式对应的校验结果指示目标应用不合法的情况下,确定该目标应用不合法。
需要说明的是,上述两种校验方式仅为示例,inputfilter模块也可以采用其它校验方式确定目标应用是否合法,即是否响应滚轮事件,本申请不对其进行限制。
S813、inputfilter模块将触摸事件发送至inputdispatcher模块。
S814、inputdispatcher模块在接收到触摸事件的情况下,将触摸事件保存至第二消息队列中。
在本申请实施例中,由于inputfilter模块无法直接将转换得到的触摸事件分发至view组件,需要通过inputdispatcher模块进行事件分发,因此,inputfilter模块需要将触摸事件发送至inputdispatcher模块,以利用inputdispatcher模块进行触摸事件的分发。
由于inputdispatcher模块可能会连续接收到多个触摸事件,因此,为了保证触摸事件可以按照时间先后顺序,依次得到处理,inputdispatcher模块将接收到的触摸事件保存至第二消息队列中,使得inputdispatcher模块可以按照先进先出顺序,依次消费第二消息队列中的触摸事件,实现触摸事件的正确响应,从而使得滚轮事件可以得到正确响应,也即可以使得用户进行的滚轮操作得到正确响应,避免出现手机先响应用户后进行的滚轮操作,后响应用户先进行的滚轮操作的情况。
其中,第二消息队列存储有需分发到view组件的触摸事件。
一般地,第二消息队列与上述第一消息队列为不同的消息队列。当然,为了减少资源的占用,第二消息队列和第一消息队列也可以为一个消息队列,本申请不对其进行限制。
S815、inputdispatcher模块将第二消息队列中的触摸事件分发到手机中的view组件。其中,view组件包括手机屏幕显示的应用界面所对应的view组件。
S816、应用界面对应的view组件在确定处理触摸事件后,根据触摸事件进行相应的控制操作。其中,该控制操作包括下拉刷新、上拉加载或者界面切换中的任一操作。
在本申请实施例中,inputdispatcher模块按照先进先出的顺序,依次将第二消息队列中的触发事件分发到view组件,view组件确定是否需处理触摸事件。其中,view组件包括手机屏幕显示的应用界面所对应的view组件;view组件的数量是至少一个。当该应用界面对应的view组件接收到触摸事件后,确定自身需处理该触摸事件,则对该触摸事件进行拦截,并处理触摸事件,也即根据该处理事件进行相应的控制操作,例如,当触摸事件指示向下滑动时,界面则随之向下移动。
其中,触摸事件的分发过程实际是从一个顶层的view组件传递到底层的view组件的过程,即自上而下的传递过程。具体的。inputdispatcher模块基于view节点树,先将触摸事件传递到根view(decorview)组件,根view组件确定是否处理该触摸事件,若不处理,则将该触摸事件传递至下层的子view组件,直至找到处理该触摸事件的view组件。
在一些实施例中,当手机显示的应用界面所对应的view组件处理触摸事件时,若该view组件无法处理该触摸事件,则将该触摸事件发送到该view组件的上层view组件(即父view组件),以由该父view组件继续处理该触摸事件,若该父view组件也无法处理触摸事件,则仍继续将该触摸事件至其上层的父view组件,直至找到能够处理该触摸事件的view组件,实现触摸事件的成功处理。因此,从这里可以看出,触摸事件的处理过程实际是从一个底层的view组件传递到上层的view组件的过程,即自下而上的处理过程。
上述描述了鼠标与手机直接通信时,通过鼠标的滚轮控制手机上的应用界面的过程。当然,鼠标还可以通过电脑与手机间接连接,即鼠标与电脑进行通信,手机投屏至该电脑。当用户滚动鼠标的滚轮时,该鼠标将上述数据包发送至电脑。之后,电脑基于该数据包生成滚轮事件,之后,电脑将该滚轮事件发送至手机。之后,该手机根据该滚轮事件对手机显示的应用界面进行相应的控制操作。
在一些实施例中,当鼠标通过电脑与手机间接连接时,手机可以显示鼠标对应的光标,也可以不显示鼠标对应的光标,可以根据实际需求进行设置,本申请不对其进行限制。
在本申请实施例中,手机响应于用户对鼠标滚轮的滚动操作,生成滚轮事件,并将滚轮事件转换为一般应用程序均支持的触摸事件,即一般应用程序均存在处理触摸事件的业务逻辑。然后,手机根据显示的应用界面所支持的控制功能,也即根据该应用界面对应的处理触摸事件的业务逻辑,控制界面进行相应的控制操作。例如,滚轮事件中的滚动方向与触摸事件中的滑动方向相反,应用界面支持上拉加载功能,当转换得到的触摸事件中的滑动方向指示向上滑动时,手机向上移动该应用界面。当手机不断生成滚动方向指示向下滚动的滚轮事件后,也即当手机不断转换得到滑动方向指示向上滑动的触摸事件后,手机基于不断得到的触摸事件持续向上移动该应用界面,当将应用界面上拉至底部后,可以加载新的内容。
在本申请实施例中,在用户通过鼠标的滚轮控制手机上的界面时,手机响应于用户对滚轮的滚动操作,生成相应的滚轮事件,并将该滚轮事件转换为手机上的一般应用均支持的触摸事件。然后,手机基于显示的应用界面所支持的控制功能,根据该触摸事件对界面进行相应的控制操作,例如,下拉刷新操作、翻页操作或者上拉加载操作等,实现触摸事件的成功响应,从而实现滚轮事件的成功响应,使得用户可以通过鼠标的滚轮对界面进行不同控制操作,提高控制移动终端的便捷性,并提高了界面控制功能的多样性,满足用户的使用需求,用户体验高。
在一些实现方式中,如图17所示,inputdispatcher模块在接收到inputreader模块发送的滚轮事件后,将其发送至inputfilter模块,inputfilter模块确定是否过滤该滚轮事件,若不过滤该滚轮事件,则将其返回至inputdispatcher模块,以使inputdispatcher模块将该滚轮事件分发至view组件。在目标应用添加了处理滚轮事件的业务逻辑的情况下,目标应用可以成功响应滚轮事件,即可以基于该业务逻辑,控制手机显示的应用界面所对应的view组件进行相应的操作,实现滚轮事件的成功响应。在目标应用未添加处理滚轮事件的业务逻辑的情况下,该目标应用便无法响应该滚轮事件,从而导致滚轮事件响应失败。其中,业务逻辑是可以根据需求进行设置的,例如,目标应用添加的处理滚轮事件的业务逻辑为:在接收到指示向上滑动的滚轮事件时,关闭界面,则目标应用在接收到指示向上滑动的滚轮事件后,关闭手机显示的界面。由此可见,在该实现方式中,当应用程序需要响应滚轮事件时,该应用程序便需要添加处理滚轮事件的业务逻辑。一方面,由于应用程序对处理滚轮事件的业务逻辑是自定义的,可能会导致不同应用程序对应的研发人员定义的业务逻辑是不同的,从而造成不同的控制效果,给用户的操作带来不便;另一方面,为了使不同应用程序都可以响应滚轮事件,需要对不同应用程序进行适配,即各个应用程序对应的研发人员均需在其研发的应用程序中添加处理滚轮事件的业务逻辑,过程繁琐,导致研发人员的工作量较大。
而在本申请实施例中,如图18所示,inputdispatcher模块在接收到inputreader模块发送的滚轮事件后,将其发送至inputfilter模块,inputfilter模块确定是否过滤该滚轮事件,若不过滤该滚轮事件,则将滚轮事件转换为触摸事件,并将转换得到的触摸事件返回至inputdispatcher模块。inputdispatcher模块将触摸事件分发至view组件,以使目标应用可以根据该触摸事件控制手机显示的应用界面进行相应的控制操作。由于本申请在框架层中的inputfilter模块便将滚轮事件转换为一般应用程序均支持的触摸事件,因此,应用程序层中的应用程序可以在仅感知触摸事件,而不感知滚轮事件的情况下,实现滚轮事件的成功响应。一方便,不同应用程序处理触摸事件的业务逻辑一般是相同的,使得滚轮事件对应的界面控制效果(即手机响应效果)一般是相同的,方便用户的操作;另一方便,由于手机可以利用位于应用程序层之下的应用程序框架层中的部分功能模块进行转换,使得应用程序层中的应用可以直接接收到触摸事件,无需应用感知滚轮事件,因此,应用程序无需添加处理滚轮事件的业务逻辑,研发人员也无需对应于程序进行适配,减少研发人员的工作量。
本申请实施例还提供一种计算机可读存储介质,该计算机存储介质包括计算机指令,当计算机指令在上述移动终端上运行时,使得该移动终端执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,包括计算机程序,当计算机程序在移动终端上运行时,使得移动终端执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(readonly memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
1.一种移动终端的控制方法,其特征在于,所述移动终端与输入设备建立了连接,所述输入设备具备滚轮;所述输入设备用于通过所述滚轮控制所述移动终端,所述方法包括:
所述移动终端显示第一界面,其中,所述第一界面为所述移动终端上的应用程序中的应用界面;
响应于用户对所述输入设备的第一操作,所述移动终端显示第二界面,其中,所述第一操作为对所述输入设备的所述滚轮的滚动操作,所述第二界面为所述第一界面经滑动后显示的界面,所述第二界面与所述第一界面部分相同或不同;
响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,其中,所述第二操作为对所述输入设备的所述滚轮的滚动操作,所述第三界面为所述第二界面经滑动后显示的界面,所述第三界面与所述第二界面部分相同或不同,所述第三界面与所述第一界面不同;
其中,所述移动终端接收所述输入设备的所述滚轮的滚动操作后,将所述滚轮的滚动操作转换成触摸指令,所述触摸指令用于控制所述应用程序中的所述应用界面滑动。
2.根据权利要求1所述的方法,其特征在于,所述滚轮的滚动操作通过输入事件过滤inputfilter模块转换成所述触摸指令。
3.根据权利要求1所述的方法,其特征在于,所述第一界面或所述第二界面的滑动距离与所述滚轮的滚动幅度存在对应关系。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述第二界面包括滚动视图控件,所述滚动视图控件用于显示多个界面元素;所述界面元素之间呈上下排列;所述第二界面中所述滚动视图控件中的处于最上方的界面元素滚动至所述滚动视图控件的顶部位置;
所述第二操作指示触发所述第二界面向下滑动;所述第三界面中的界面元素与所述第二界面中的界面元素均不相同;
所述响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,包括:
所述移动终端响应于所述第二操作,下拉刷新所述第二界面显示所述第三界面。
5.根据权利要求1至3中任一项所述的方法,其特征在于,所述第二界面包括滚动视图控件,所述滚动视图控件用于显示多个界面元素;所述界面元素之间呈上下排列;所述第二界面中所述滚动视图控件中的处于最下方的界面元素滚动至所述滚动视图控件的底部位置;
所述第二操作指示触发所述第二界面向上滑动;所述第三界面中的界面元素与所述第二界面中的界面元素部分不同;
所述响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,包括:
所述移动终端响应于所述第二操作,上拉加载所述第二界面显示所述第三界面。
6.根据权利要求1至3中任一项所述的方法,其特征在于,所述第一界面中的界面元素为预设元素列表中的第一界面元素;
所述响应于用户对所述输入设备的第一操作,所述移动终端显示第二界面,包括:
在所述第一操作指示触发所述第一界面向上滑动的情况下,所述移动终端响应于所述第一操作,显示包括第二界面元素的所述第二界面,所述第二界面元素为所述预设元素列表中所述第一界面元素的下一个界面元素;
在所述第一操作指示触发所述第一界面向下滑动的情况下,所述移动终端响应于所述第一操作,显示包括第三界面元素的所述第二界面,所述第三界面元素为所述预设元素列表中所述第一界面元素的上一个界面元素。
7.根据权利要求4至6中任一项所述的方法,其特征在于,所述界面元素包括以下中的至少一个:视频、文本和图像。
8.根据权利要求1至3任一项所述的方法,其特征在于,所述响应于用户对所述输入设备的第二操作,所述移动终端显示第三界面,包括:
所述移动终端响应于所述第二操作,将滚轮指令转换为所述触摸指令;其中,所述滚轮指令是基于所述第二操作生成的;
基于所述触摸指令对所述第二界面执行相应的控制操作,并显示对所述第二界面执行控制操作后得到的所述第三界面;其中,所述控制操作包括下拉刷新、上拉加载和界面切换中的任一控制操作。
9.根据权利要求8所述的方法,其特征在于,所述将滚轮指令转换为所述触摸指令,包括:
获取所述滚轮指令中的第一参数;其中,所述第一参数指示所述滚轮的滚动操作在所述第二界面上的操作参数;
基于预设触摸指令格式和所述第一参数,将所述滚轮指令转换为所述触摸指令;其中,预设触摸指令格式与所述移动终端的触摸指令的数据格式相同。
10.根据权利要求9所述的方法,其特征在于,所述第一参数包括所述滚轮的滚动方向、所述滚轮的滚动速度和光标位置中的至少一个;所述光标位置指示所述输入设备对应的光标在所述移动终端的屏幕上的位置;
其中,所述光标位置对应所述触摸指令中的触摸点位置,所述滚轮的滚动方向对应所述触摸指令所触发的界面滑动方向,所述滚轮的滚动速度对应所述触摸指令所触发的界面滑动速度。
11.根据权利要求10所述的方法,其特征在于,所述触摸指令包括1个按下down指令、n个移动move指令和1个抬起up指令;其中,所述n为正整数;
所述基于预设触摸指令格式和所述第一参数,将所述滚轮指令转换为所述触摸指令,包括:
基于所述预设触摸指令格式和所述光标位置,生成所述down指令和所述up指令;
基于所述预设触摸指令格式、所述滚轮的滚动方向、所述滚轮的滚动速度和所述光标位置,生成所述move指令。
12.根据权利要求1至11中任一项所述的方法,其特征在于,所述响应于用户对所述输入设备的第一操作,所述移动终端显示第二界面,包括:
所述移动终端响应于所述第一操作,在确定所述应用程序属于合法应用的情况下,显示所述第二界面。
13.根据权利要求12所述的方法,其特征在于,所述方法还包括:
基于预设校验方式,对所述应用程序进行合法性校验,得到校验结果;其中,所述校验结果指示所述应用程序是否为合法应用;所述合法应用指示允许响应滚轮的滚动操作的应用程序;
其中,所述预设校验方式包括白名单校验方式和/或权限校验方式。
14.一种通信系统,其特征在于,包括移动终端和输入设备;所述移动终端与所述输入设备建立了连接;所述输入设备具备滚轮;
所述输入设备,用于接收用户对所述输入设备的第一操作,并响应于所述第一操作,生成第一数据包;其中,所述第一操作为对所述输入设备的所述滚轮的滚动操作,所述第一数据包包括所述滚轮的滚动方向和/或所述滚轮的滚动幅度;
所述输入设备,还用于将所述第一数据包发送至所述移动终端;
所述移动终端,用于显示第一界面,接收所述输入设备发送的第一数据包,并将所述第一数据包转换成第一触摸指令,以及所述移动终端响应于所述第一触摸指令,显示第二界面;其中,所述第一界面为所述移动终端上的应用程序中的应用界面,所述第二界面为所述第一界面经滑动后显示的界面,所述第二界面与所述第一界面部分相同或不同;
所述输入设备,用于接收用户对所述输入设备的第二操作,并响应于所述第二操作,生成第二数据包;其中,所述第二操作为对所述输入设备的所述滚轮的滚动操作;
所述输入设备,还用于将所述第二数据包发送至所述移动终端;
所述移动终端,用于接收所述输入设备发送的第二数据包,并将所述第二数据包转换成第二触摸指令,以及所述移动终端响应于所述第二触摸指令,显示第三界面;其中,所述第三界面为所述第二界面经滑动后显示的界面,所述第三界面与所述第二界面部分相同或不同,所述第三界面与所述第一界面不同。
15.一种移动终端,其特征在于,所述移动终端包括存储器、显示屏、通信模块和一个或多个处理器;所述存储器、所述显示屏、所述通信模块与所述处理器耦合;其中,所述通信模块用于与输入设备通信,所述显示屏用于显示所述处理器生成的图像,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述移动终端执行如权利要求1至13中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在移动终端上运行时,使得所述移动终端执行如权利要求1至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210898267.1A CN116048357B (zh) | 2022-07-28 | 2022-07-28 | 移动终端的控制方法及移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210898267.1A CN116048357B (zh) | 2022-07-28 | 2022-07-28 | 移动终端的控制方法及移动终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116048357A true CN116048357A (zh) | 2023-05-02 |
CN116048357B CN116048357B (zh) | 2024-07-05 |
Family
ID=86122602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210898267.1A Active CN116048357B (zh) | 2022-07-28 | 2022-07-28 | 移动终端的控制方法及移动终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116048357B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719035A (zh) * | 2009-12-08 | 2010-06-02 | 清华大学 | 带有可按键和/或滚轮输入的触笔的pc触摸屏系统 |
CN102591497A (zh) * | 2012-03-16 | 2012-07-18 | 上海达龙信息科技有限公司 | 一种触控屏幕上的鼠标模拟系统及方法 |
CN103440131A (zh) * | 2013-08-30 | 2013-12-11 | 四川九洲电器集团有限责任公司 | 一种基于安卓系统的移动终端触摸屏视图布局调整方法 |
US20170336883A1 (en) * | 2016-05-20 | 2017-11-23 | Citrix Systems, Inc. | Using a hardware mouse to operate a local application running on a mobile device |
CN109885187A (zh) * | 2019-03-12 | 2019-06-14 | 厦门攸信信息技术有限公司 | 一种手机鼠标输入系统及输入方法 |
-
2022
- 2022-07-28 CN CN202210898267.1A patent/CN116048357B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101719035A (zh) * | 2009-12-08 | 2010-06-02 | 清华大学 | 带有可按键和/或滚轮输入的触笔的pc触摸屏系统 |
CN102591497A (zh) * | 2012-03-16 | 2012-07-18 | 上海达龙信息科技有限公司 | 一种触控屏幕上的鼠标模拟系统及方法 |
CN103440131A (zh) * | 2013-08-30 | 2013-12-11 | 四川九洲电器集团有限责任公司 | 一种基于安卓系统的移动终端触摸屏视图布局调整方法 |
US20170336883A1 (en) * | 2016-05-20 | 2017-11-23 | Citrix Systems, Inc. | Using a hardware mouse to operate a local application running on a mobile device |
CN109885187A (zh) * | 2019-03-12 | 2019-06-14 | 厦门攸信信息技术有限公司 | 一种手机鼠标输入系统及输入方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116048357B (zh) | 2024-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP4002108B1 (en) | Application start method and electronic device | |
WO2020108356A1 (zh) | 一种应用显示方法及电子设备 | |
EP4145286A1 (en) | Memory management method and electronic device | |
JP2023513063A (ja) | カード表示方法、電子機器、およびコンピュータ可読記憶媒体 | |
CN115016706B (zh) | 一种线程的调度方法及电子设备 | |
EP4202614A1 (en) | Method for adjusting touch panel sampling rate, and electronic device | |
US20230054451A1 (en) | Communication Connection Method and Electronic Device | |
CN114610419B (zh) | 添加widget的方法、装置及计算机可读存储介质 | |
CN116048357B (zh) | 移动终端的控制方法及移动终端 | |
WO2023005711A1 (zh) | 一种服务的推荐方法及电子设备 | |
CN114339591A (zh) | 基于超宽带芯片进行定位的方法和相关装置 | |
CN116204254A (zh) | 一种批注页面生成方法、电子设备及存储介质 | |
CN116136826A (zh) | 内存访问方法、芯片、电子设备及计算机可读存储介质 | |
CN115278642A (zh) | 获取sim卡的信息的方法、电子设备及终端设备 | |
CN116662150B (zh) | 应用启动耗时检测方法及相关装置 | |
CN116055623B (zh) | 一种功耗控制方法及电子设备、存储介质 | |
CN116700944B (zh) | 一种内存回收方法、装置及电子设备 | |
CN114860354B (zh) | 一种加载列表的方法及电子设备 | |
CN115828227B (zh) | 识别广告弹窗的方法、电子设备及存储介质 | |
CN116204093B (zh) | 一种页面显示方法及电子设备 | |
CN113542315B (zh) | 通信框架、业务事件处理方法及装置 | |
WO2024093431A1 (zh) | 一种图像绘制方法及电子设备 | |
US20240069845A1 (en) | Focus synchronization method and electronic device | |
CN117724634A (zh) | 一种应用程序的进程管理方法和装置 | |
CN118426888A (zh) | 一种显示控制方法及电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |