CN111694631A - 挂件显示方法和装置 - Google Patents
挂件显示方法和装置 Download PDFInfo
- Publication number
- CN111694631A CN111694631A CN202010542784.6A CN202010542784A CN111694631A CN 111694631 A CN111694631 A CN 111694631A CN 202010542784 A CN202010542784 A CN 202010542784A CN 111694631 A CN111694631 A CN 111694631A
- Authority
- CN
- China
- Prior art keywords
- pendant
- display
- page
- timing
- characters
- 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
- 238000000034 method Methods 0.000 title claims abstract description 62
- 230000006870 function Effects 0.000 claims description 26
- 238000001179 sorption measurement Methods 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 239000003795 chemical substances by application Substances 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000007726 management method Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 3
- 235000001808 Ceanothus spinosus Nutrition 0.000 description 2
- 241001264786 Ceanothus spinosus Species 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 101100533306 Mus musculus Setx gene Proteins 0.000 description 1
- 230000002411 adverse Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04817—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
-
- 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/0487—Interaction 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/0488—Interaction 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开关于一种挂件显示方法和装置,并具体公开了:根据页面执行的任务获取挂件的显示内容和计时时长;在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种挂件显示方法和装置。
背景技术
随着互联网技术的发展,越来越多的应用程序(APP),例如,视频播放类APP、直播类APP、社交类APP等已经广泛地融入到用户的日常生活,方便了用户的工作、学习和娱乐。
用户在使用应用程序的过程中,应用程序的页面上通常会显示一些挂件,以起到提示作用,例如,在直播APP中,对于正在进行的直播,直播页面上会显示“LIVE”标识,表示直播正在进行中。
相关技术中的挂件通常是为专用功能开发的固定挂件(如前述的“LIVE”标识),不能自适应显示挂件内容。有鉴于此,亟需提供一种能够扩展挂件的显示信息的挂件显示方案。
发明内容
本公开提供一种挂件显示方法和装置及系统,以至少解决相关技术中挂件不能自适应显示挂件内容的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种挂件显示方法,包括:根据页面执行的任务获取挂件的显示内容和计时时长;在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
在一种可能实现方式中,所述在所述页面中显示包括有所述显示内容的所述挂件之前,所述方法还包括:在所述页面的上一级页面中显示包括有通用内容的所述挂件;其中,在达到所述计时时长后,所述挂件具有回到上一级页面的入口。
在一种可能实现方式中,所述在所述页面中显示包括有所述显示内容的所述挂件之前,所述方法还包括:创建计时线程;创建消息传递对象,其中,所述消息传递对象用于将所述计时线程的计时信息传递至进度条组件;将所述进度条组件添加到可扩展标记语言中,其中,所述可扩展标记语言用于控制所述页面的显示方式;其中,所述在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时包括:在满足所述挂件的显示条件的情况下,启动所述计时线程,并通过所述消息传递对象将所述计时信息传递到所述进度条组件中,以在所述页面中显示包括有所述进度条组件和所述显示内容的所述挂件。
在一种可能实现方式中,所述方法还包括:创建所述进度条组件的外部接口,所述外部接口用于实现下述至少之一的功能:启动新的计时;停止计时;暂停计时;恢复暂停的计时。
在一种可能实现方式中,所述显示内容包括多个字符,所述在所述页面中显示包括有所述显示内容的所述挂件包括:调整所述多个字符的字体大小,使得所述多个字符显示在所述挂件中;或者调整所述多个字符的字体大小,直至所述多个字符的字体大小达到最小值。
在一种可能实现方式中,所述在所述页面中显示包括有所述显示内容的所述挂件之前,所述方法还包括:创建业务代理类,所述业务代理类中包括TextView类中的TextPaint类,其中,所述TextPaint类提供的方法用于调整所述多个字符的字体大小。
在一种可能实现方式中,所述在所述页面中显示包括有所述显示内容的所述挂件之后,所述方法还包括:检测外部介质在所述页面中的触碰轨迹;基于所述触碰轨迹调整所述挂件在所述页面中的显示位置,使得所述挂件的显示位置与所述触碰轨迹相匹配。
在一种可能实现方式中,所述基于所述触碰轨迹调整所述挂件在所述页面中的显示位置还包括:在满足触碰结束条件的情况下,计算出所述页面的边界上距离触碰结束位置最近的吸附点;基于所述吸附点的位置,确定所述挂件的最终显示位置。
在一种可能实现方式中,所述挂件的实现代码位于Activity层级;或者所述挂件的实现代码位于Window层级。
根据本公开实施例的第二方面,提供一种挂件显示装置,包括:获取单元,被配置为执行根据页面执行的任务获取挂件的显示内容和计时时长;显示单元,被配置为执行在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;所述显示单元,还被配置为执行在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
在一种可能实现方式中,所述显示单元,还被配置为执行在所述页面的上一级页面中显示包括有通用内容的所述挂件;其中,在达到所述计时时长后,所述挂件具有回到上一级页面的入口。
在一种可能实现方式中,所述装置还包括创建单元,被配置为执行创建计时线程;创建消息传递对象,其中,所述消息传递对象用于将所述计时线程的计时信息传递至进度条组件;将所述进度条组件添加到可扩展标记语言中,其中,所述可扩展标记语言用于控制所述页面的显示方式;其中,所述显示单元,还被配置为执行在满足所述挂件的显示条件的情况下,启动所述计时线程,并通过所述消息传递对象将所述计时信息传递到所述进度条组件中,以在所述页面中显示包括有所述进度条组件和所述显示内容的所述挂件。
在一种可能实现方式中,所述创建单元,被配置为执行创建所述进度条组件的外部接口,所述外部接口用于实现下述至少之一的功能:启动新的计时;停止计时;暂停计时;恢复暂停的计时。
在一种可能实现方式中,所述显示内容包括多个字符,所述显示单元,还被配置为执行:调整所述多个字符的字体大小,使得所述多个字符显示在所述挂件中;或者调整所述多个字符的字体大小,直至所述多个字符的字体大小达到最小值。
在一种可能实现方式中,所述装置还包括创建单元,被配置为执行创建业务代理类,所述业务代理类中包括TextView类中的TextPaint类,其中,所述TextPaint类提供的方法用于调整所述多个字符的字体大小。
在一种可能实现方式中,所述装置还包括检测单元,被配置为执行检测外部介质在所述页面中的触碰轨迹;所述显示单元,还被配置为执行基于所述触碰轨迹调整所述挂件在所述页面中的显示位置,使得所述挂件的显示位置与所述触碰轨迹相匹配。
在一种可能实现方式中,所述显示单元,还被配置为执行在满足触碰结束条件的情况下,计算出所述页面的边界上距离触碰结束位置最近的吸附点;基于所述吸附点的位置,确定所述挂件的最终显示位置。
在一种可能实现方式中,所述挂件的实现代码位于Activity层级;或者所述挂件的实现代码位于Window层级。
根据本公开实施例的第三方面,提供一种挂件显示装置,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如前述的挂件显示方法。
根据本公开实施例的第四方面,提供一种存储介质,当所述存储介质中的指令由挂件显示装置中的处理器执行时,使得挂件显示装置能够执行如前述的挂件显示方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括至少一种非临时性的计算机可读介质,存储由至少一个处理器可翻译的指令,用于实施前述的挂件显示方法。
本公开的实施例提供的技术方案至少带来以下有益效果:可以根据页面执行的任务获取挂件的显示内容和计时时长,在满足挂件的显示条件的情况下即可显示包括有上述显示内容的挂件,并启动计时,在达到计时时长后,更新挂件以显示上述任务为完成状态,使得挂件可以根据页面执行的任务显示相应的内容,且使得挂件实现了计时功能,并基于计时功能显示任务的完成状态,挂件的显示内容更加丰富,实现根据任务自适应显示的挂件。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种挂件显示方法的流程图。
图2是根据一示例性实施例示出的一种挂件显示示意图。
图3是根据一示例性实施例示出的一种挂件显示装置的框图。
图4是根据一示例性实施例示出的一种挂件显示装置的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种挂件显示方法的流程图,如图1所示,挂件显示方法100用于挂件显示装置(如移动终端)中,包括以下步骤。
在步骤S102中,根据页面执行的任务获取挂件的显示内容和计时时长。
在图2所示的页面中,页面执行的任务可以是:如果用户在页面中浏览时长达到10秒,则赠送该用户1000红心,该红心作为互联网的虚拟物品,可以用来使用户兑换权限,提升用户人气等。
该实施例中,挂件的显示内容可以是字符、图标等。在图2所示的例子中,挂件的显示内容包括红心图标以及多个字符,这多个字符为:“浏览页面得1000红心”。
该实施例中,挂件的计时时长可以是10秒,5秒等。该实施例通常在挂件显示后开始计时,在计时结束后可以显示页面执行的任务为完成状态。
在步骤S104中,在满足挂件的显示条件的情况下,在页面中显示包括有上述显示内容的挂件,并启动计时。
该实施例中的挂件显示条件,例如可以是:用户打开某一页面;用户触发了页面中的某一按钮等,该实施例对此不作具体限定。
该步骤例如,用户打开某一页面,则在该页面中显示包括有上述显示内容的挂件,并启动计时;该步骤又例如,用户点击了页面中的某一按钮,则在该页面中显示包括有上述显示内容的挂件,并启动计时。
在步骤S106中,在达到计时时长后,更新挂件以显示上述任务为完成状态。
在图2所示的示例中,该步骤具体例如,在达到计时时长后,将上述显示内容“浏览页面得1000红心”替换为“任务完成”。
可选地,在达到计时时长后,挂件上具有回到上一级页面的入口。在图2所示的示例中,在达到计时时长后,在挂件上显示有“返回主会场”的按钮,用户点击该按钮则自动跳转到主会场页面(即当前页面的上一级页面)。
本公开提供的挂件显示方法,可以根据页面执行的任务获取挂件的显示内容和计时时长,在满足挂件的显示条件的情况下即可显示包括有上述显示内容的挂件,并启动计时,在达到计时时长后,更新挂件以显示上述任务为完成状态,使得挂件可以根据页面执行的任务显示相应的内容,且使得挂件实现了计时功能,并基于计时功能显示任务的完成状态,挂件的显示内容更加丰富,实现根据任务自适应显示的挂件。
可选地,在实施例100的在页面中显示包括有上述显示内容的挂件之前,所述方法还包括如下步骤:在所述页面的上一级页面中显示包括有通用内容的所述挂件;其中,在达到所述计时时长后,所述挂件具有回到上一级页面的入口。
该实施例中提到的显示包括有通用内容的挂件,可以是仅仅显示挂件图标,例如,在图2所示的示例中,通用内容的挂件为:除了中间的进度条组件以及字符“浏览页面得1000红心”之外的内容。
该实施例在挂件上设置回到上一级页面的入口,便于用户在完成当前页面执行的任务后快速返回上一级页面,提升用户体验。
可选地,实施例100的在页面中显示包括有上述显示内容的所述挂件之前,所述方法还包括如下步骤:创建计时线程;创建消息传递对象,其中,所述消息传递对象用于将所述计时线程的计时信息传递至进度条组件;将所述进度条组件添加到可扩展标记语言中,其中,所述可扩展标记语言用于控制所述页面的显示方式。这样,实施例100的S104具体可以是:在满足所述挂件的显示条件的情况下,启动所述计时线程,并通过所述消息传递对象将所述计时信息传递到所述进度条组件中,以在所述页面中显示包括有所述进度条组件和所述显示内容的所述挂件。
该实施例中创建的计时线程可以用来实现倒计时任务,例如,倒计时读秒等。在一个例子中,该计时线程启动后,可以每隔1秒钟通过后文中提到的消息传递对象向消息队列里面添加一条新的消息(或称信息),处理到这条信息的时候执行倒计时+1的操作,直至完成倒计时的总时长(例如10秒)后可以结束该计时线程。
可选地,该实施例还可以将创建的计时线程保存在executor中。executor是Android平台为了方便开发人员对线程的管理而提供的线程管理工具,方便后续对计时线程的调度。
该实施例中的消息传递对象可以是handler,handler是Android系统消息机制中的组成部分,可以用它来发消息,也可以通过它处理消息。对应于计时线程的计时信息,例如,前文已经提到,上述计时线程启动后,可以每隔1秒钟生成一条新的信息,该计时信息可以是计时线程生成的用于实现倒计时的消息。
可选地,该实施例中的进度条组件可以是ProgressBar。ProgressBar是Android提供给开发者使用的进度条组件,该实施例可以通过ProgressBar在客户端页面中显示倒计时信息。
该实施例中的可扩展标记语言可以是xml语言,通过xml语言可以控制客户端页面的显示方式。
该实施例中提到的挂件可以参见图2,其中包括有进度条组件,该进度条组件可以基于计时线程来显示倒计时信息,例如,进度条组件的显示长度为满格对应的是计时线程未启动的状态,计时线程对应的总时长例如可以是10秒;计时线程启动后,每秒生成一条消息并传递到进度条组件,相应地,进度条组件的显示长度减少十分之一,直至计时线程达到总时长结束,同时,进度条组件的显示长度变为0。
基于上述实施例中设置的进度条组件,可选地,实施例100还可以包括如下步骤:在满足挂件结束显示条件的情况下,停止计时线程,不再显示包括进度条组件的挂件。该实施例可以控制挂件的显示时机,例如,控制挂件显示10秒后自动消失,便于在多种不同的应用场景中使用,提升挂件的应用范围。
本公开提供的挂件显示方法可以使用进度条组件和自定义Handler的实现机制,后期代码的自由度更高,能定制化更多的功能,扩展性和可维护性更强。
可选地,如果计时线程的倒计时的总时长有变动,该实施例还可以向用户展示进度更改界面,方便用户更改倒计时的总时长,提升了挂件的通用性和灵活性。
可选地,上述实施例还可以包括如下步骤:创建进度条组件的外部接口,该外部接口用于实现下述至少之一的功能:启动新的计时(start);停止计时(stop);暂停计时(pause);恢复暂停的计时(resume)。
可以理解,上述列举的多种功能中,可以是一种功能通过一个接口实现,也可以是多种功能集成在一个接口中实现。
该实施例通过提供的上述外部接口,方便外部使用组件根据业务逻辑来调用进度条组件,以此来达到可复用的目的,提升了挂件的通用性。
可选地,实施例100中提到的挂件的显示内容包括多个字符,参见图2中的挂件中所示的字符“浏览页面得1000红心”。在图2所示的实施例中,用户在客户端页面中浏览时长达到10秒即可自动获得1000红心,该红心作为互联网的虚拟物品,可以用来兑换权限,提升人气等。
这样,实施例100中提到的在页面中显示包括有上述显示内容的挂件的步骤包括如下两者之一:
1)调整多个字符的字体大小,使得多个字符全部显示在挂件中。
该实施例可以基于挂件的中可显示字符的区域的总长度(后文称作是挂件长度,可以是一行的长度,也可以是多行的总长度),在待显示的多个字符的总长度大于上述挂件长度时,逐步缩小这多个字符的字体大小,再测量多个字符的总长度后与挂件长度对比,直至多个字符的总长度小于等于挂件长度,即可停止整个流程,将最后的结果渲染显示。
当然,如果挂件长度较长,待显示的字符的数量较少时,该实施例还可以逐级扩大这多个字符的字体大小,使得多个字符全部显示在挂件中,直至多个字符的字体大小达到最大值。
2)调整多个字符的字体大小,直至多个字符的字体大小达到最小值。
可以理解,如果挂件中显示字符的字体过小,这将会对用户的浏览产生不利影响,为了提升用户的浏览体验,通常还可以设置字符的字体大小的最小值。
这样,在待显示的多个字符的总长度大于上述挂件长度时,逐步缩小这多个字符的字体大小,再测量多个字符的总长度后与挂件长度对比,直至多个字符的字体大小达到最小值,即可停止整个流程,将最后的结果渲染显示。
可选地,该实施例中由于未能显示全部的字符,因此,还可以在显示的多个字符的结束位置显示省略号等提示信息,以向用户展示未能显示全部的字符。
该实施例可以根据需要,动态调整字符的字体大小,以自适应在挂件中显示,提升用户的浏览体验。
为了实现上述实施例中提到的字符字体大小自动调整的功能(后文简称内容自适应功能),可选地,在实施例100在页面显示包括显示内容的挂件之前,所述方法还包括如下步骤:创建业务代理类,所述业务代理类中包括TextView类中的TextPaint类,其中,所述TextPaint类提供的方法用于调整所述多个字符的字体大小。
作为一种实现方式,该实施例可以通过如下操作实现:基于TextView继承出一个子类,作为整个内容自适应功能的对外接口;新建一个业务代理类TextSizeAdjustableDelegate,用于存放内容自适应功能的所有功能代码,代理类里面可以传入TextView类中的TextPaint类,辅助测量当前需要显示的字符的长度,在需要显示的内容更新时,触发测量操作,在字符总长度大于挂件长度时,逐步缩小多个字符的字体大小,再测量字符长度后与挂件长度对比,直到达到最小字体大小或字符长度小于等于挂件长度,即可停止整个流程,将最后的结果渲染。
作为一种实现方式,该实施例可以通过如下操作实现:
1、从TextView继承出一个子类,作为整个内容自适应模块的对外接口。
2、创建一个delegate类,将TextView的setText()等方式代理出来,在代理类里进行字符大小的动态调整。
3、获取TextView里的TextPaint,结合Layout类,递减缩小当前字符的字体大小,直到达到最小字体大小或字符长度小于等于挂件长度,即可停止整个流程。
4、多个字符的字体大小确定后再次刷新TextView显示这多个字符。
对与该实施例中提到的内容自适应功能,Android原生并没有支持,该实施例通过上述两种实现方式,协调字符的字体大小与挂件长度的关系,在保证用户的观感体验的情况下,尽可能全的显示所有字符。如果字符的字体大小计算到小于最小字体的大小,则会以最小字体显示,并在无法显示完全的情况下显示省略号。
为了实现内容自适应功能,可以依赖于原生控件TextView的基础上扩展出动态调整字符的字体大小的逻辑,该实施例可以将字符的渲染部分交给原生组件,该实施例通过TextPaint和Layout动态计算出最合适的字体大小。
可选地,前文各个实施例中在页面中显示包括有显示内容的挂件之后,所述方法还包括如下步骤:检测外部介质在所述页面中的触碰轨迹;基于所述触碰轨迹调整所述挂件在所述页面中的显示位置,使得所述挂件的显示位置与所述触碰轨迹相匹配。
该外部介质可以是用户手指等。
该实施例例如,用户点击并拖动挂件时,挂件即可随着用户的手指的移动而同步移动,方便用户随时调整挂件在客户端页面中的显示位置,避免挂件遮挡客户端页面中的重要信息,或者是可以满足用户的个性化需求,提升用户体验。
可选地,上述提到的基于所述触碰轨迹调整所述挂件在所述页面中的显示位置还包括:在满足触碰结束条件的情况下,计算出所述页面的边界上距离触碰结束位置最近的吸附点;基于所述吸附点的位置,确定所述挂件的最终显示位置。
该实施例可以实现挂件的自动吸附功能,使得挂件自动吸附在客户端页面的边界上,避免挂件遮挡客户端页面中的重要信息,提升用户体验。
该实施例可以解决普通挂件无法挪动位置,没有对全面屏以及导航栏做适配工作的问题,提升用户体验。
为了实现上述实施例中的拖拽的功能,可以对整个挂件的触摸事件来做出一个跟手的动画,涉及到回弹并吸附在屏幕边缘的功能部分,先需要适配好顶部刘海屏以及底部可能存在的导航栏,确定回弹吸附的边界范围,再通过Scroller将组件平滑的移动到屏幕边界。
可选地,该实施例之前,还可以在挂件里直接重载onTouchEvent以识别用户手势的输入,通过setX、setY将用户的拖拽操作和整个挂件的移动建立映射关系,以实现挂件跟手拖拽移动的功能。再判断用户手指抬起的动作,在动作触发时激活挂件回弹并吸附的操作,计算好适配的全面屏以及导航栏位置,激活Scroller来执行一个平滑回弹的动作。
作为一种实现方式,该实施例提到对额拖拽功能可以通过如下操作实现:
1、重载onTouchEvent方法,调用
requestDisallowInterceptTouchEvent()不让parent拦截触摸事件,并对触摸事件进行分类处理;
2、在手指down按下屏幕时,检测手指边界,如果在屏幕范围内则消费事件并记录手指按下的位置;
3、move事件(手指拖拽)产生时,将手指产生的滑动距离与方向传递给整个挂件,让挂件能够产生一个跟手移动的效果;
4、up事件(手指离开屏幕停止拖拽)产生时,计算出当前位置离最近吸附点的轨迹,并激活Scroller做出一个平滑的动画。
可选地,前文各个实施例中提到的挂件的实现代码位于Activity层级,这样,即可在应用程序的单个页面中显示挂件,提升挂件显示的灵活性,以方便控制在指定页面显示挂件。
可选地,前文各个实施例中提到的挂件的实现代码还可以位于Window层级,这样,即可在应用程序的多个显示页面中显示该挂件,而不仅仅是在单个页面展示,提升通用性。
图3是根据一示例性实施例示出的一种挂件显示装置框图。参照图3,该装置300包括获取单元302和显示单元304。
获取单元302,被配置为执行根据页面执行的任务获取挂件的显示内容和计时时长;
显示单元304,被配置为执行在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;
所述显示单元304,还被配置为执行在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
本公开提供的挂件显示装置,可以根据页面执行的任务获取挂件的显示内容和计时时长,在满足挂件的显示条件的情况下即可显示包括有上述显示内容的挂件,并启动计时,在达到计时时长后,更新挂件以显示上述任务为完成状态,使得挂件可以根据页面执行的任务显示相应的内容,且使得挂件实现了计时功能,并基于计时功能显示任务的完成状态,挂件的显示内容更加丰富,实现根据任务自适应显示的挂件。
在一种可能实现方式中,所述显示单元304,还被配置为执行在所述页面的上一级页面中显示包括有通用内容的所述挂件;其中,在达到所述计时时长后,所述挂件具有回到上一级页面的入口。
在一种可能实现方式中,所述装置300还包括创建单元,被配置为执行创建计时线程;创建消息传递对象,其中,所述消息传递对象用于将所述计时线程的计时信息传递至进度条组件;将所述进度条组件添加到可扩展标记语言中,其中,所述可扩展标记语言用于控制所述页面的显示方式;其中,所述显示单元304,还被配置为执行在满足所述挂件的显示条件的情况下,启动所述计时线程,并通过所述消息传递对象将所述计时信息传递到所述进度条组件中,以在所述页面中显示包括有所述进度条组件和所述显示内容的所述挂件。
在一种可能实现方式中,所述创建单元,被配置为执行创建所述进度条组件的外部接口,所述外部接口用于实现下述至少之一的功能:启动新的计时;停止计时;暂停计时;恢复暂停的计时。
在一种可能实现方式中,所述显示内容包括多个字符,所述显示单元304,还被配置为执行:调整所述多个字符的字体大小,使得所述多个字符显示在所述挂件中;或者调整所述多个字符的字体大小,直至所述多个字符的字体大小达到最小值。
在一种可能实现方式中,所述装置300还包括创建单元,被配置为执行创建业务代理类,所述业务代理类中包括TextView类中的TextPaint类,其中,所述TextPaint类提供的方法用于调整所述多个字符的字体大小。
在一种可能实现方式中,所述装置300还包括检测单元,被配置为执行检测外部介质在所述页面中的触碰轨迹;所述显示单元304,还被配置为执行基于所述触碰轨迹调整所述挂件在所述页面中的显示位置,使得所述挂件的显示位置与所述触碰轨迹相匹配。
在一种可能实现方式中,所述显示单元304,还被配置为执行在满足触碰结束条件的情况下,计算出所述页面的边界上距离触碰结束位置最近的吸附点;基于所述吸附点的位置,确定所述挂件的最终显示位置。
在一种可能实现方式中,所述挂件的实现代码位于Activity层级;或者所述挂件的实现代码位于Window层级。
关于上述实施例中的装置,其中各个模块/单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图4是根据一示例性实施例示出的一种用于挂件显示方法的装置400的框图。例如,装置400可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图4,装置400可以包括以下一个或多个组件:处理组件402,存储器404,电力组件406,多媒体组件408,音频组件410,输入/输出(I/O)的接口412,传感器组件414,以及通信组件416。
处理组件402通常控制装置400的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件402可以包括一个或多个处理器420来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件402可以包括一个或多个模块,便于处理组件402和其他组件之间的交互。例如,处理组件402可以包括多媒体模块,以方便多媒体组件408和处理组件402之间的交互。
存储器404被配置为存储各种类型的数据以支持在设备400的操作。这些数据的示例包括用于在装置400上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器404可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件406为装置400的各种组件提供电力。电源组件406可以包括电源管理系统,一个或多个电源,及其他与为装置400生成、管理和分配电力相关联的组件。
多媒体组件408包括在所述装置400和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件408包括一个前置摄像头和/或后置摄像头。当设备400处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件410被配置为输出和/或输入音频信号。例如,音频组件410包括一个麦克风(MIC),当装置400处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器404或经由通信组件416发送。在一些实施例中,音频组件410还包括一个扬声器,用于输出音频信号。
I/O接口412为处理组件402和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件414包括一个或多个传感器,用于为装置400提供各个方面的状态评估。例如,传感器组件414可以检测到设备400的打开/关闭状态,组件的相对定位,例如所述组件为装置400的显示器和小键盘,传感器组件414还可以检测装置400或装置400一个组件的位置改变,用户与装置400接触的存在或不存在,装置400方位或加速/减速和装置400的温度变化。传感器组件414可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件414还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件414还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件416被配置为便于装置400和其他设备之间有线或无线方式的通信。装置400可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件416经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件416还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,装置400可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器404,上述指令可由装置400的处理器420执行以完成上述挂件显示方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
应注意,由于本实施例中由装置400执行的挂件显示方法具有与前述实施例100中的挂件显示方法相同或相应的技术特征,因此,关于本实施例中的挂件显示方法的详细描述可参照前述实施例100中对挂件显示方法的描述,本实施例在此不再赘述。
在示例性实施例中,还提供了一种计算机程序产品,包括至少一种非临时性的计算机可读介质,存储由至少一个处理器可翻译的指令,用于实施前述的挂件显示方法。
应注意,由于本实施例中由计算机程序产品实现的挂件显示方法具有与前述实施例100中的挂件显示方法相同或相应的技术特征,因此,关于本实施例中的挂件显示方法的详细描述可参照前述实施例100中对挂件显示方法的描述,本实施例在此不再赘述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种挂件显示方法,其特征在于,包括:
根据页面执行的任务获取挂件的显示内容和计时时长;
在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;
在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
2.根据权利要求1所述的方法,其特征在于,所述在所述页面中显示包括有所述显示内容的所述挂件之前,所述方法还包括:
在所述页面的上一级页面中显示包括有通用内容的所述挂件;
其中,在达到所述计时时长后,所述挂件具有回到上一级页面的入口。
3.根据权利要求1所述的方法,其特征在于,所述在所述页面中显示包括有所述显示内容的所述挂件之前,所述方法还包括:
创建计时线程;
创建消息传递对象,其中,所述消息传递对象用于将所述计时线程的计时信息传递至进度条组件;
将所述进度条组件添加到可扩展标记语言中,其中,所述可扩展标记语言用于控制所述页面的显示方式;
其中,所述在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时包括:
在满足所述挂件的显示条件的情况下,启动所述计时线程,并通过所述消息传递对象将所述计时信息传递到所述进度条组件中,以在所述页面中显示包括有所述进度条组件和所述显示内容的所述挂件。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
创建所述进度条组件的外部接口,所述外部接口用于实现下述至少之一的功能:
启动新的计时;停止计时;暂停计时;恢复暂停的计时。
5.根据权利要求1所述的方法,其特征在于,所述显示内容包括多个字符,所述在所述页面中显示包括有所述显示内容的所述挂件包括:
调整所述多个字符的字体大小,使得所述多个字符显示在所述挂件中;或者
调整所述多个字符的字体大小,直至所述多个字符的字体大小达到最小值。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述在所述页面中显示包括有所述显示内容的所述挂件之后,所述方法还包括:
检测外部介质在所述页面中的触碰轨迹;
基于所述触碰轨迹调整所述挂件在所述页面中的显示位置,使得所述挂件的显示位置与所述触碰轨迹相匹配。
7.根据权利要求6所述的方法,其特征在于,所述基于所述触碰轨迹调整所述挂件在所述页面中的显示位置还包括:
在满足触碰结束条件的情况下,计算出所述页面的边界上距离触碰结束位置最近的吸附点;
基于所述吸附点的位置,确定所述挂件的最终显示位置。
8.一种挂件显示装置,其特征在于,包括:
获取单元,被配置为执行根据页面执行的任务获取挂件的显示内容和计时时长;
显示单元,被配置为执行在满足所述挂件的显示条件的情况下,在所述页面中显示包括有所述显示内容的所述挂件,并启动计时;
所述显示单元,还被配置为执行在达到所述计时时长后,更新所述挂件以显示所述任务为完成状态。
9.一种挂件显示装置,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至7中任一项所述的挂件显示方法。
10.一种存储介质,当所述存储介质中的指令由挂件显示装置的处理器执行时,使得挂件显示装置能够执行如权利要求1至7中任一项所述的挂件显示方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010542784.6A CN111694631A (zh) | 2020-06-15 | 2020-06-15 | 挂件显示方法和装置 |
US17/328,692 US11663022B2 (en) | 2020-06-15 | 2021-05-24 | Method and apparatus for displaying widget |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010542784.6A CN111694631A (zh) | 2020-06-15 | 2020-06-15 | 挂件显示方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111694631A true CN111694631A (zh) | 2020-09-22 |
Family
ID=72481054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010542784.6A Pending CN111694631A (zh) | 2020-06-15 | 2020-06-15 | 挂件显示方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11663022B2 (zh) |
CN (1) | CN111694631A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114327214A (zh) * | 2022-01-05 | 2022-04-12 | 北京有竹居网络技术有限公司 | 交互方法、装置、电子设备、存储介质及计算机程序产品 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USD978904S1 (en) * | 2020-06-09 | 2023-02-21 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
USD982611S1 (en) | 2020-06-09 | 2023-04-04 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130191733A1 (en) * | 2012-01-19 | 2013-07-25 | Samsung Electronics Co., Ltd. | System and method for displaying pages on mobile device |
CN104516647A (zh) * | 2014-12-24 | 2015-04-15 | 小米科技有限责任公司 | 消息通知的处理方法及装置 |
CN106293315A (zh) * | 2015-06-03 | 2017-01-04 | 腾讯科技(深圳)有限公司 | 浮动窗口显示的方法和装置 |
CN305066402S (zh) * | 2019-03-15 | |||
WO2019154095A1 (zh) * | 2018-02-08 | 2019-08-15 | 腾讯科技(深圳)有限公司 | 数据显示方法和装置、存储介质及电子装置 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10559216B2 (en) * | 2013-10-22 | 2020-02-11 | D2L Corporation | Systems and methods for conducting assessments in an electronic learning system |
US20160266733A1 (en) * | 2015-03-11 | 2016-09-15 | Case Global, Inc. | Event and staff management systems and methods |
WO2016154149A1 (en) * | 2015-03-20 | 2016-09-29 | Twitter, Inc. | Live video stream sharing |
US10289281B2 (en) * | 2015-11-30 | 2019-05-14 | International Business Machines Corporation | Progress bar updated based on crowd sourced statistics |
CN105681056B (zh) * | 2016-01-13 | 2019-03-19 | 阿里巴巴集团控股有限公司 | 对象分配方法及装置 |
US20170366579A1 (en) * | 2016-06-16 | 2017-12-21 | Mariana Assuncao Aguiar | System and method for controlled customization of branded artwork |
US10652618B2 (en) * | 2017-02-16 | 2020-05-12 | Facebook, Inc. | Transmitting video clips of viewers' reactions during a broadcast of a live video stream |
WO2019043655A1 (en) | 2017-09-01 | 2019-03-07 | Hochart Christophe Michel Pierre | SYSTEMS AND METHODS FOR DISTRIBUTING MOBILE DEVICE CONTENT |
US10924808B2 (en) * | 2017-12-28 | 2021-02-16 | Facebook, Inc. | Automatic speech recognition for live video comments |
JP7140527B2 (ja) * | 2018-03-30 | 2022-09-21 | キヤノン株式会社 | 電子機器及びその制御方法 |
US11032222B2 (en) * | 2019-08-22 | 2021-06-08 | Facebook, Inc. | Notifying users of offensive content |
-
2020
- 2020-06-15 CN CN202010542784.6A patent/CN111694631A/zh active Pending
-
2021
- 2021-05-24 US US17/328,692 patent/US11663022B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN305066402S (zh) * | 2019-03-15 | |||
US20130191733A1 (en) * | 2012-01-19 | 2013-07-25 | Samsung Electronics Co., Ltd. | System and method for displaying pages on mobile device |
CN104516647A (zh) * | 2014-12-24 | 2015-04-15 | 小米科技有限责任公司 | 消息通知的处理方法及装置 |
CN106293315A (zh) * | 2015-06-03 | 2017-01-04 | 腾讯科技(深圳)有限公司 | 浮动窗口显示的方法和装置 |
WO2019154095A1 (zh) * | 2018-02-08 | 2019-08-15 | 腾讯科技(深圳)有限公司 | 数据显示方法和装置、存储介质及电子装置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114327214A (zh) * | 2022-01-05 | 2022-04-12 | 北京有竹居网络技术有限公司 | 交互方法、装置、电子设备、存储介质及计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
US20210389961A1 (en) | 2021-12-16 |
US11663022B2 (en) | 2023-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107908351B (zh) | 应用界面的显示方法、装置及存储介质 | |
EP3572936A1 (en) | Method, terminal and computer-readable storage medium for displaying interface of application program | |
EP3182716A1 (en) | Method and device for video display | |
US11663022B2 (en) | Method and apparatus for displaying widget | |
CN107992257B (zh) | 分屏方法及装置 | |
EP3089016A1 (en) | Button interaction method and apparatus | |
CN107102772B (zh) | 触控方法及装置 | |
CN111880757A (zh) | 投屏方法、投屏装置及存储介质 | |
US20190235745A1 (en) | Method and device for displaying descriptive information | |
EP3239827B1 (en) | Method and apparatus for adjusting playing progress of media file | |
WO2021169792A1 (zh) | 消息查看方法及装置 | |
CN107798309B (zh) | 指纹录入方法、装置及计算机可读存储介质 | |
CN111610912B (zh) | 应用显示方法、应用显示装置及存储介质 | |
CN106095300B (zh) | 播放进度调整方法及装置 | |
CN107656694B (zh) | 用户界面的显示控制方法及装置 | |
EP3035172A1 (en) | Method and device for activating operation state of mobile terminal | |
CN111880681A (zh) | 触摸屏采样速率调节方法、装置及计算机存储介质 | |
CN108984098B (zh) | 基于社交软件的信息显示的控制方法及装置 | |
CN108874450B (zh) | 唤醒语音助手的方法及装置 | |
CN112130719B (zh) | 页面显示方法、装置、系统、电子设备及存储介质 | |
CN106940653B (zh) | 控制应用程序的方法、装置及计算机可读存储介质 | |
US11221734B2 (en) | Punch-hole screen display method and apparatus | |
CN112631492A (zh) | 任务创建方法及装置 | |
CN113311984A (zh) | 触摸屏轨迹的数据处理方法和装置、移动终端及电子设备 | |
CN108829473B (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 |
Application publication date: 20200922 |
|
RJ01 | Rejection of invention patent application after publication |