CN108829312A - 下拉刷新动画展示方法及装置、电子设备和可读存储介质 - Google Patents
下拉刷新动画展示方法及装置、电子设备和可读存储介质 Download PDFInfo
- Publication number
- CN108829312A CN108829312A CN201810338702.9A CN201810338702A CN108829312A CN 108829312 A CN108829312 A CN 108829312A CN 201810338702 A CN201810338702 A CN 201810338702A CN 108829312 A CN108829312 A CN 108829312A
- Authority
- CN
- China
- Prior art keywords
- pull
- animation
- threshold
- down state
- offset
- 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.)
- Pending
Links
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/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
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)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明实施例提供一种下拉刷新动画展示方法及装置、电子设备和可读存储介质。该方法包括:获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括:与N个下拉状态一一对应的N个动画样式,动画协议包括N个下拉状态,N个动画样式是业务调用方根据N个下拉状态对业务调用方的刷新动画拆分后得到,N为正整数,获取滚动视图控件在滚动时的偏移量,根据偏移量、第一阈值和第二阈值确定下拉状态,根据所确定的下拉状态和动画视图触发刷新动画。从而可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
Description
技术领域
本发明实施例涉及通信技术领域,尤其涉及一种下拉刷新动画展示方法及装置、电子设备和可读存储介质。
背景技术
伴随着手机应用的飞速发展,手机应用程序(Application,APP)占据着非常大的市场份额,在大多数主流的APP上都会或多或少的涉及到列表数据的展示,当用户停留在列表页浏览时间过长时,就会有需要刷新数据的诉求,下拉刷新是一种APP中应用普遍灵活的实现刷新的方式,下拉刷新既不在视图上遮挡列表数据,又能增加APP的丰富体验,因此广受用户喜爱。然而下拉刷新的功能开发者在代码实现上却各有不同,所以设计并实现一种高内聚、低耦合的方案显得尤为必要。
现有的一种下拉刷新的方法通过UIScrollView的代理方法实现,即使用UIScrollView实现下拉刷新,UIScrollView是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容,在使用UIScrollView实现下拉刷新的过程中,当用户下拉UIScrollView的滚动偏移量(offset)超过预设阈值时,触发刷新动画,同时进行页面刷新处理。可以根据offset的数值不同来更新动画的轨迹,从而实现各式各样的刷新动画。
但是,UIScrollView的代理方法通常是将下拉刷新的代码和展示页面其它功能逻辑的代码写在同一个文件中,代码复用性差,而且当需要实现不同的下拉刷新动画时,仍需要编写冗余代码来实现,代码扩展性差。
发明内容
本发明实施例提供一种下拉刷新动画展示方法及装置、电子设备和可读存储介质,可提升下拉刷新代码的复用度和扩展性。
第一方面,本发明实施例提供一种下拉刷新动画展示方法,包括:
获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,所述动画视图包括:与N个下拉状态一一对应的N个动画样式,所述动画协议包括所述N个下拉状态,所述N个动画样式是所述业务调用方根据所述N个下拉状态对所述业务调用方的刷新动画拆分后得到,N为正整数;
获取所述滚动视图控件在滚动时的偏移量;
根据所述偏移量、第一阈值和第二阈值确定下拉状态,根据所确定的下拉状态和所述动画视图触发所述刷新动画。
可选的,所述获取滚动视图控件在滚动时的偏移量,包括:
通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
可选的,所述N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
可选的,所述第一阈值小于所述第二阈值,所述根据所述偏移量、第一阈值和第二阈值确定下拉状态,包括:
若所述偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;
若所述偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;
若所述偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;
若所述偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;
若所述偏移量等于第二阈值,确定下拉状态为加载中;
若所述偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;
若所述偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
可选的,所述根据所确定的下拉状态和所述动画视图触发所述刷新动画,包括:
从所述N个下拉状态对应的N个动画样式中找出所确定的下拉状态对应的动画样式;
触发所述动画样式,或者,根据用户的触发指令触发所述动画样式。
第二方面,本发明实施例提供一种下拉刷新动画展示装置,包括:
第一获取模块,用于获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,所述动画视图包括:与N个下拉状态一一对应的N个动画样式,所述动画协议包括所述N个下拉状态,所述N个动画样式是所述业务调用方根据所述N个下拉状态对所述业务调用方的刷新动画拆分后得到,N为正整数;
第二获取模块,用于获取所述滚动视图控件在滚动时的偏移量;
确定模块,用于根据所述偏移量、第一阈值和第二阈值确定下拉状态;
处理模块,用于根据所确定的下拉状态和所述动画视图触发所述刷新动画。
可选的,所述第二获取模块用于:
通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
可选的,所述N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
可选的,所述第一阈值小于所述第二阈值,所述确定模块用于:
若所述偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;
若所述偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;
若所述偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;
若所述偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;
若所述偏移量等于第二阈值,确定下拉状态为加载中;
若所述偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;
若所述偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
可选的,所述处理模块用于:
从与所述N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式;
触发所述动画样式,或者,根据用户的触发指令触发所述动画样式。
第三方面,本发明实施例提供一种电子设备,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现第一方面的下拉刷新动画展示方法。
第四方面,本发明实施例提供一种可读存储介质,可读存储介质中存储有计算机程序,当下拉刷新动画展示装置的至少一个处理器执行该计算机程序时,下拉刷新动画展示装置执行第一方面的下拉刷新动画展示方法。
第五方面,本发明实施例提供一种程序产品,该程序产品包括计算机程序,该计算机程序存储在可读存储介质中。下拉刷新动画展示装置的至少一个处理器可以从可读存储介质读取该计算机程序,至少一个处理器执行该计算机程序使得下拉刷新动画展示装置实施第一方面的下拉刷新动画展示方法。
本发明实施例提供的下拉刷新动画展示方法及装置、电子设备和可读存储介质,通过获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,接着获取滚动视图控件在滚动时的偏移量,根据偏移量和N个下拉状态对应的N个阈值确定下拉状态,根据所确定的下拉状态和动画视图触发刷新动画,从而实现了业务调用方的刷新动画的展示,因此,业务调用方只需要遵从动画协议,即根据动画协议设定的N个下拉状态将满足自己业务需求的刷新动画拆分为N个动画样式,并将N个下拉状态对应的N个动画样式通过动画协议的接口注册到滚动视图控件类别中就可使用本发明实施例提供的下拉刷新动画展示方法实现刷新动画的展示,可使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,调用便捷,可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
附图说明
为了清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种下拉刷新动画展示方法实施例的流程图;
图2为本发明提供的一种下拉刷新动画展示方法实施例的流程示意图;
图3为本发明提供的一种下拉刷新动画展示装置实施例的结构示意图;
图4为本发明提供的一种电子设备实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
首先,下面对本发明实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1、电子设备,包括但不限于移动台(Mobile Station,MS)、移动终端(MobileTerminal)、移动电话(Mobile Telephone)、手机(handset)及便携设备(portableequipment)等,该电子设备可以经无线接入网(Radio Access Network,RAN)与一个或多个核心网进行通信,例如,电子设备可以是移动电话(或称为“蜂窝”电话)、具有无线通信功能的计算机等,电子设备还可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置或设备。
2、APP,是电子设备上的第三方应用程序,也称为客户端,例如网购类APP、本地服务类APP、理财类APP和搜索类APP等。
3、滚动视图(UIScrollView),是一个能够滚动的视图控件,可以用来展示大量的内容,并且可以通过滚动查看所有的内容,可供任一APP调用。
4、键值监听(Key-Value Observing,KVO),其提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知消息,简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了。
本发明实施例提供一种下拉刷新动画展示方法及装置、电子设备和可读存储介质,可用于实现电子设备的APP页面在下拉刷新时刷新动画的展示,首先获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括与N个下拉状态一一对应的N个动画样式,接着通过KVO监听滚动视图控件在滚动时的偏移量,根据偏移量和N个下拉状态对应的N个阈值确定下拉状态,根据所确定的下拉状态和动画视图触发刷新动画,从而实现了业务调用方的刷新动画的展示,因此,业务调用方只需要遵从动画协议,即根据动画协议设定的N个下拉状态将满足自己业务需求的刷新动画拆分为N个动画样式,并将N个下拉状态对应的N个动画样式通过动画协议的接口注册到滚动视图控件类别中就可使用本发明实施例提供的下拉刷新动画展示方法实现刷新动画的展示,使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。下面结合附图详细说明本申请的技术方案。
图1为本发明提供的一种下拉刷新动画展示方法实施例的流程图,本实施例的方法可应用于电子设备,电子设备可以搭载Android系统或iOS系统,并在Android系统或iOS系统中安装了多个APP,本实施例的执行主体可以为电子设备,如图1所示,本实施例的方法可以包括:
S101、获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括:与N个下拉状态一一对应的N个动画样式,动画协议包括N个下拉状态,N个动画样式是业务调用方根据N个下拉状态对业务调用方的刷新动画拆分后得到,N为正整数。
具体来说,APP上常见的列表视图大多数都是用表格视图(UITableView)或收集视图(UICollectionView)来实现的,甚至常见的网页容器类UIWebView,这三个常见类都是集成自滚动视图控件的,因此本发明实施例提供的下拉刷新动画展示方法还是从滚动视图控件出发,实现滚动视图控件类别(category)。可选的,本发明实施例中的滚动视图控件可以为UIScrollView。
本实施例中,业务调用方根据动画协议所包括的N个下拉状态对自身的刷新动画进行拆分,拆分为N个动画样式,每个下拉状态唯一的对应一个动画样式,动画样式即为刷新动画的不同状态,例如刷新动画为一个小动物在跳舞,动画样式可以为小动物行走、小动物跳舞、小动物停止等不同的状态。业务调用方将刷新动画拆分为N个动画样式后,得到该刷新动画对应的动画视图,然后通过动画协议的公共接口将动画视图注册到滚动视图控件类别中。
接着,本实施例中的电子设备获取业务调用方注册的动画视图,接着执行S102。
S102、获取滚动视图控件在滚动时的偏移量。
可选的,本实施例中可以是通过KVO监听滚动视图控件在滚动时的偏移量,本实施例中,通过利用KVO技术对滚动视图控件在滚动时的偏移量作监听,从而实时监测到用户滚动时的偏移量。
S103、根据偏移量、第一阈值和第二阈值确定下拉状态,根据所确定的下拉状态和动画视图触发刷新动画。
在一种可能的方式中,N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。第一阈值小于第二阈值,此时S103中根据偏移量、第一阈值和第二阈值确定下拉状态,具体可以为:
若偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态。
若偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线。
若偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线。
若偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽。
若偏移量等于第二阈值,确定下拉状态为加载中。
若偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归。
若偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
可选的,第一阈值为0,第二阈值为预设值。
具体地,用户对屏幕的操作包括用户点击屏幕、向上滑动屏幕或向下滑动屏幕以及进行上述操作后离开屏幕,向下滑动屏幕即为下拉操作。下拉刷新页面的过程中,用户对屏幕的操作包括用户点击屏幕、向下滑动屏幕和向下滑动屏幕后离开屏幕。
在一种可能的方式中,S103中根据所确定的下拉状态和动画视图触发刷新动画,具体可以为:
从与N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式,接着触发动画样式,即自动触发该动画样式,或者,根据用户的触发指令触发动画样式,即用户手动触发该动画样式。
本实施例提供的下拉刷新动画展示方法,通过获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,接着获取滚动视图控件在滚动时的偏移量,根据偏移量和N个下拉状态对应的N个阈值确定下拉状态,根据所确定的下拉状态和动画视图触发刷新动画,从而实现了业务调用方的刷新动画的展示,因此,业务调用方只需要遵从动画协议,即根据动画协议设定的N个下拉状态将满足自己业务需求的刷新动画拆分为N个动画样式,并将N个下拉状态对应的N个动画样式通过动画协议的接口注册到滚动视图控件类别中就可使用本发明实施例提供的下拉刷新动画展示方法实现刷新动画的展示,本实施例提供的方法,使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,调用便捷,可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
下面采用一个具体的实施例,对图1所示方法实施例的技术方案进行详细说明。
图2为本发明提供的一种下拉刷新动画展示方法实施例的流程示意图,如图2所示,本实施例中以“业务调用方1”和“业务调用方2”为例,满足“业务调用方1”的业务需求的刷新动画为刷新动画1,满足“业务调用方2”的业务需求的刷新动画为刷新动画2,本实施例的方法可以包括:
S201、“业务调用方1”根据动画协议(Protocol)所包括的N个下拉状态对刷新动画1进行拆分,拆分为N个动画样式,动画协议包括N个下拉状态,得到动画视图,动画视图包括N个下拉状态对应的N个动画样式。
同样地,“业务调用方2”根据动画协议所包括的N个下拉状态对刷新动画2进行拆分,拆分为N个动画样式,动画协议包括N个下拉状态,得到动画视图,动画视图包括N个下拉状态对应的N个动画样式。
S202、“业务调用方1”通过动画协议的公共接口将动画视图注册到滚动视图控件类别中,以调用下拉刷新动画展示方法。
同样地,“业务调用方2”通过动画协议的公共接口将动画视图注册到滚动视图控件类别中,以调用下拉刷新动画展示方法。
本实施例中以N=6为例进行说明,本实施例中的动画协议包括6个下拉状态,示例如下:
初始默认态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中状态、加载完成回归和回归完成,其中的初始默认态和回归完成的滚动偏移量相同,都为0。
S203、调用下拉刷新动画展示方法。
下面是下拉刷新动画展示方法的执行过程:
S2031、获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图。
S2032、通过KVO监听滚动视图控件在滚动时的偏移量。
其中,KVO的监听与处理逻辑可以包括:
S20321、KVO对滚动视图控件的监听回调。
S20322、获取到调用方注册的动画视图。
S20322、判断是否是滚动视图控件的监听。
如果是,则获取到滚动视图控件的偏移值。
接着加载更多回调。
接着下拉刷新回调。
根据旧的状态值和新的状态值确定状态值是否改变,改变时调用block回调。
如果不是滚动视图控件的监听,则处理逻辑结束。
S2033、根据偏移量、第一阈值和第二阈值确定下拉状态。
本实施例中,第一阈值小于第二阈值,第一阈值可以为0,也可以为大于0的数值,如0.001或0.01,第一阈值可根据具体的界面分布情况设置。
下面以第一阈值为0,第二阈值为A,偏移量为x为例,S2033具体可以为:
若x=0,且检测到用户未离开屏幕,确定下拉状态为初始默认状态。
若0<x<A,确定下拉状态为下拉未超底线。
若x>A,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线。
若x>A,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽。
若x=A,确定下拉状态为加载中。
若x<A,且确定页面刷新完成,确定下拉状态为加载完成回归。
若x=0,且检测到用户离开屏幕,确定下拉状态为回归完成。
下面以第一阈值为0.001,第二阈值为A,偏移量为x为例,S2033具体可以为:
若x=0.001,且检测到用户未离开屏幕,确定下拉状态为初始默认状态。
若0.001<x<A,确定下拉状态为下拉未超底线。
若x>A,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线。
若x>A,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽。
若x=A,确定下拉状态为加载中。
若x<A,且确定页面刷新完成,确定下拉状态为加载完成回归。
若x=0.001,且检测到用户离开屏幕,确定下拉状态为回归完成。
S2034、从N个下拉状态对应的N个动画样式中找出所确定的下拉状态对应的动画样式,接着触发动画样式,即自动触发该动画样式,或者,根据用户的触发指令触发动画样式,即用户手动触发该动画样式。
具体地,触发动画样式可以为:将通过KVO监听的偏移量转换为当前的状态并传递给注册的动画视图,当刷新动画1或刷新动画2接收到当前的状态时,展示当前状态对应的动画样式,从而实现了刷新动画1或刷新动画2的展示,用户可以看到所展示的刷新动画。
图3为本发明提供的一种下拉刷新动画展示装置实施例的结构示意图,如图3所示,本实施例的装置可以包括:第一获取模块11、第二获取模块12、确定模块13和处理模块14,其中,
第一获取模块11用于获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括:与N个下拉状态一一对应的N个动画样式,动画协议包括N个下拉状态,N个动画样式是业务调用方根据N个下拉状态对业务调用方的刷新动画拆分后得到,N为正整数。
第二获取模块12用于获取滚动视图控件在滚动时的偏移量。
确定模块13用于根据偏移量、第一阈值和第二阈值确定下拉状态。
处理模块14用于根据所确定的下拉状态和动画视图触发刷新动画。
可选的,第二获取模块12用于:通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
可选的,N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
可选的,第一阈值小于第二阈值,确定模块13用于:若偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;若偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;若偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;若偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;若偏移量等于第二阈值,确定下拉状态为加载中;若偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;若偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
可选的,处理模块14用于:从与N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式,触发动画样式,或者,根据用户的触发指令触发动画样式。
本实施例的装置,可以用于执行图1或图2所示方法实施例的技术方案,其实现原理类似,此处不再赘述。
本实施例提供的下拉刷新动画展示装置,实现了业务调用方的刷新动画的展示,使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,调用便捷,可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
图4为本发明提供的一种电子设备实施例的结构示意图,如图4所示,本实施例的电子设备可以包括:存储器21和处理器22,
存储器21,用于存储程序指令,该存储器可以是flash(闪存)。
处理器22,用于调用并执行存储器中的程序指令,以实现图1或图2所示的下拉刷新动画展示方法中的各个步骤。
本实施例的电子设备还可以包括输入/输出接口23。输入/输出接口23可以包括独立的输出接口和输入接口,也可以为集成输入和输出的集成接口。其中,输出接口用于输出数据,输入接口用于获取输入的数据。
具体地,处理器22用于:
获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括:与N个下拉状态一一对应的N个动画样式,动画协议包括N个下拉状态,N个动画样式是业务调用方根据N个下拉状态对业务调用方的刷新动画拆分后得到,N为正整数。
获取滚动视图控件在滚动时的偏移量。
根据偏移量、第一阈值和第二阈值确定下拉状态。
根据所确定的下拉状态和动画视图触发刷新动画。
可选的,处理器22用于:通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
可选的,N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
可选的,第一阈值小于第二阈值,处理器22用于:若偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;若偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;若偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;若偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;若偏移量等于第二阈值,确定下拉状态为加载中;若偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;若偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
可选的,处理器22用于:从与N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式,触发动画样式,或者,根据用户的触发指令触发动画样式。
本实施例提供的电子设备,实现了业务调用方的刷新动画的展示,使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,调用便捷,可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
本发明实施例还提供一种可读存储介质,可读存储介质中存储有计算机程序,当下拉刷新动画展示装置的至少一个处理器执行该计算机程序时,下拉刷新动画展示装置执行下述过程:
获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,动画视图包括:与N个下拉状态一一对应的N个动画样式,动画协议包括N个下拉状态,N个动画样式是业务调用方根据N个下拉状态对业务调用方的刷新动画拆分后得到,N为正整数。
获取滚动视图控件在滚动时的偏移量。
根据偏移量、第一阈值和第二阈值确定下拉状态。
根据所确定的下拉状态和动画视图触发刷新动画。
从而,实现了业务调用方的刷新动画的展示,使得下拉刷新代码和业务调用方的业务代码隔离从而降低耦合,调用便捷,可实现不同刷新动画的展示,可提升下拉刷新代码的复用度和扩展性,提升APP的整体用户体验。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的范围。
Claims (12)
1.一种下拉刷新动画展示方法,其特征在于,包括:
获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,所述动画视图包括:与N个下拉状态一一对应的N个动画样式,所述动画协议包括所述N个下拉状态,所述N个动画样式是所述业务调用方根据所述N个下拉状态对所述业务调用方的刷新动画拆分后得到,N为正整数;
获取所述滚动视图控件在滚动时的偏移量;
根据所述偏移量、第一阈值和第二阈值确定下拉状态,根据所确定的下拉状态和所述动画视图触发所述刷新动画。
2.根据权利要求1所述的方法,其特征在于,所述获取滚动视图控件在滚动时的偏移量,包括:
通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
3.根据权利要求1或2所述的方法,其特征在于,所述N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
4.根据权利要求3所述的方法,其特征在于,所述第一阈值小于所述第二阈值,所述根据所述偏移量、第一阈值和第二阈值确定下拉状态,包括:
若所述偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;
若所述偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;
若所述偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;
若所述偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;
若所述偏移量等于第二阈值,确定下拉状态为加载中;
若所述偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;
若所述偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
5.根据权利要求1所述的方法,其特征在于,所述根据所确定的下拉状态和所述动画视图触发所述刷新动画,包括:
从与所述N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式;
触发所述动画样式,或者,根据用户的触发指令触发所述动画样式。
6.一种下拉刷新动画展示装置,其特征在于,包括:
第一获取模块,用于获取业务调用方通过动画协议的接口注册到滚动视图控件类别的动画视图,所述动画视图包括:与N个下拉状态一一对应的N个动画样式,所述动画协议包括所述N个下拉状态,所述N个动画样式是所述业务调用方根据所述N个下拉状态对所述业务调用方的刷新动画拆分后得到,N为正整数;
第二获取模块,用于获取所述滚动视图控件在滚动时的偏移量;
确定模块,用于根据所述偏移量、第一阈值和第二阈值确定下拉状态;
处理模块,用于根据所确定的下拉状态和所述动画视图触发所述刷新动画。
7.根据权利要求6所述的装置,其特征在于,所述第二获取模块用于:
通过键值监听KVO监听滚动视图控件在滚动时的偏移量。
8.根据权利要求6或7所述的装置,其特征在于,所述N=6,6个下拉状态为:初始默认状态、下拉未超底线、下拉已超底线、超线释放拖拽、加载中、加载完成回归和回归完成,其中,初始默认状态和回归完成为重叠的状态。
9.根据权利要求8所述的装置,其特征在于,所述第一阈值小于所述第二阈值,所述确定模块用于:
若所述偏移量等于第一阈值,且检测到用户未离开屏幕,确定下拉状态为初始默认状态;
若所述偏移量大于第一阈值且小于第二阈值,确定下拉状态为下拉未超底线;
若所述偏移量大于第二阈值,且检测到用户未离开屏幕,确定下拉状态为下拉已超底线;
若所述偏移量大于第二阈值,且检测到用户离开屏幕,确定下拉状态为超线释放拖拽;
若所述偏移量等于第二阈值,确定下拉状态为加载中;
若所述偏移量小于第二阈值,且确定页面刷新完成,确定下拉状态为加载完成回归;
若所述偏移量等于第一阈值,且检测到用户离开屏幕,确定下拉状态为回归完成。
10.根据权利要求6所述的装置,其特征在于,所述处理模块用于:
从与所述N个下拉状态一一对应的N个动画样式中找出所确定的下拉状态对应的动画样式;
触发所述动画样式,或者,根据用户的触发指令触发所述动画样式。
11.一种电子设备,其特征在于,包括:
存储器,用于存储程序指令;
处理器,用于调用并执行所述存储器中的程序指令,以实现权利要求1~5任一项所述的下拉刷新动画展示方法。
12.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序,当下拉刷新动画展示装置的至少一个处理器执行所述计算机程序时,下拉刷新动画展示装置执行权利要求1~5任一项所述的下拉刷新动画展示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338702.9A CN108829312A (zh) | 2018-04-16 | 2018-04-16 | 下拉刷新动画展示方法及装置、电子设备和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810338702.9A CN108829312A (zh) | 2018-04-16 | 2018-04-16 | 下拉刷新动画展示方法及装置、电子设备和可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108829312A true CN108829312A (zh) | 2018-11-16 |
Family
ID=64154366
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810338702.9A Pending CN108829312A (zh) | 2018-04-16 | 2018-04-16 | 下拉刷新动画展示方法及装置、电子设备和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108829312A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262736A (zh) * | 2019-06-20 | 2019-09-20 | 北京字节跳动网络技术有限公司 | 数据表格创建方法及装置 |
CN116501205A (zh) * | 2023-04-28 | 2023-07-28 | 成都赛力斯科技有限公司 | 被覆盖视图的移动方法、装置、电子设备及可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104951215A (zh) * | 2014-03-24 | 2015-09-30 | 腾讯科技(北京)有限公司 | 一种页面操作的处理方法和装置 |
US9275181B2 (en) * | 2012-09-21 | 2016-03-01 | Taiwan Semiconductor Manufacturing Company Limited | Cell design |
CN105677224A (zh) * | 2016-01-06 | 2016-06-15 | 广州市动景计算机科技有限公司 | 一种下拉手势处理方法、装置及设备 |
CN106648430A (zh) * | 2016-12-20 | 2017-05-10 | 天脉聚源(北京)传媒科技有限公司 | 一种智能显示下拉刷新动画的方法及装置 |
CN107491297A (zh) * | 2017-06-23 | 2017-12-19 | 北京五八信息技术有限公司 | 下拉刷新app界面的实现方法及装置 |
-
2018
- 2018-04-16 CN CN201810338702.9A patent/CN108829312A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9275181B2 (en) * | 2012-09-21 | 2016-03-01 | Taiwan Semiconductor Manufacturing Company Limited | Cell design |
CN104951215A (zh) * | 2014-03-24 | 2015-09-30 | 腾讯科技(北京)有限公司 | 一种页面操作的处理方法和装置 |
CN105677224A (zh) * | 2016-01-06 | 2016-06-15 | 广州市动景计算机科技有限公司 | 一种下拉手势处理方法、装置及设备 |
CN106648430A (zh) * | 2016-12-20 | 2017-05-10 | 天脉聚源(北京)传媒科技有限公司 | 一种智能显示下拉刷新动画的方法及装置 |
CN107491297A (zh) * | 2017-06-23 | 2017-12-19 | 北京五八信息技术有限公司 | 下拉刷新app界面的实现方法及装置 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110262736A (zh) * | 2019-06-20 | 2019-09-20 | 北京字节跳动网络技术有限公司 | 数据表格创建方法及装置 |
CN116501205A (zh) * | 2023-04-28 | 2023-07-28 | 成都赛力斯科技有限公司 | 被覆盖视图的移动方法、装置、电子设备及可读存储介质 |
CN116501205B (zh) * | 2023-04-28 | 2024-04-26 | 重庆赛力斯凤凰智创科技有限公司 | 被覆盖视图的移动方法、装置、电子设备及可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107102936A (zh) | 一种流畅度的评估方法和移动终端以及存储介质 | |
CN102957809B (zh) | 一种在智能手机上对应用程序进行优化的方法 | |
CN103119589B (zh) | 用于将移动设备功能绑定到应用定义的方法和装置 | |
CN110096277A (zh) | 一种动态页面展示方法、装置、电子设备及存储介质 | |
CN103678452B (zh) | 可视化以及与业务对象的分析的整合 | |
CN109933760A (zh) | 表单生成方法、装置、计算机设备及计算机可读存储介质 | |
JP2017504121A5 (zh) | ||
CN106104417A (zh) | 使用眼动跟踪技术改进向计算设备提供场境数据 | |
CN103064782B (zh) | 一种获取控件的方法及装置 | |
CN110035180A (zh) | 卡片显示方法、装置、终端及存储介质 | |
CN108965389A (zh) | 用于展示信息的方法 | |
US10496658B2 (en) | Method and system of visually depicting hierarchical data through selective colorization | |
CN105824517B (zh) | 一种桌面的实现方法和装置 | |
CN109614194A (zh) | 列表界面的显示方法、装置、设备及存储介质 | |
WO2017143996A1 (zh) | 数据展示的方法与装置 | |
CN107679885A (zh) | 一种广告数据获取方法及装置 | |
CN109388317A (zh) | 一种图片加载方法、终端设备及存储介质 | |
CN108829312A (zh) | 下拉刷新动画展示方法及装置、电子设备和可读存储介质 | |
CN107666435A (zh) | 一种屏蔽消息的方法及装置 | |
CN107765773A (zh) | 一种显示信息的方法、装置、终端及存储介质 | |
CN105934737A (zh) | 用户接口显示方法及其电子设备 | |
CN107633426A (zh) | 基于环境数据的广告信息植入方法及系统 | |
CN105354090B (zh) | 虚拟设备的管理方法和装置 | |
CN105630893B (zh) | 一种组图标题的显示方法和装置 | |
CN107704598A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181116 |