本公开涉及一种富文本消息显示方法、装置、系统、介质和电子设备,所述方法包括:消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息;根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图;向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。因此,可以由消息子线程对富文本消息进行解析,可以有效缓解消息主线程的数据处理压力。并且,消息子线程基于该富文本消息构建显示视图,从而使得消息主线程可以直接基于显示视图进行显示,可以有效缩短富文本消息显示所需的渲染时间,通过一次构建对富文本消息进行完整显示,提高富文本消息显示的响应效率和实时性。
【技术实现步骤摘要】
富文本消息显示方法、装置、系统、介质和电子设备
本公开涉及计算机
,具体地,涉及一种富文本消息显示方法、装置、系统、介质和电子设备。
技术介绍
随着计算机技术的发展,各种实时交互性应用程序应运而生。以直播间为例,通常会有大量用户实时进行评论,现有技术中可以支持文本评论和图片评论,以及礼物消息等,通常采用富文本格式(RichTextFormat,RTF)消息(即多文本格式)以显示该评论内容。在现有技术中,由于该富文本格式消息中存在多种文本格式,因此在对其进行渲染显示时,通常是通过消息主线程接收该富文本消息并对该富文本消息进行解析,从而根据解析后的结果进行拼接并渲染以显示该富文本消息。在上述方案中,由于该多种文本格式的加载时间不同,通常需要多次渲染才可以将该富文本格式消息显示完成,渲染时间长,消息解析复杂度高,并且在大量用户交互的场景下容易出现消息阻塞的问题,难以满足高实时性场景的使用需求。
技术实现思路
提供该
技术实现思路
部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该
技术实现思路
部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。第一方面,本公开提供一种富文本消息显示方法,所述方法包括:消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息;根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图;向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。第二方面,本公开提供一种富文本消息显示装置,所述装置包括:确定模块,用于消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息;构建模块,用于根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图;发送模块,用于向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。第三方面,本公开提供一种富文本消息显示系统,所述系统包括:一个或多个消息子线程,所述消息子线程用于执行第一方面所述的方法的步骤;消息主线程,与所述消息子线程通信,用于从所述消息子线程接收显示视图,并对所述显示视图进行显示。第四方面,本公开提供一种计算机可读介质,其上存储有计算机程序,该程序被处理装置执行时实现第一方面所述方法的步骤。第五方面,本公开提供一种电子设备,包括:存储装置,其上存储有计算机程序;处理装置,用于执行所述存储装置中的所述计算机程序,以实现第一方面所述方法的步骤。在上述技术方案中,消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息,根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图,向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。因此,通过上述技术方案,可以由消息子线程对富文本消息进行解析,从而可以有效缓解消息主线程的数据处理压力,提高消息主线程显示消息的实时性和效率。并且,消息子线程基于该富文本消息构建显示视图,从而使得消息主线程可以直接基于显示视图进行显示,从而可以有效缩短富文本消息显示所需的渲染时间,并且可以通过一次构建对富文本消息进行完整显示,提高富文本消息显示的响应效率和实时性。本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。附图说明结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。在附图中:图1是本公开的一种实施方式提供的富文本消息显示方法的流程图;图2是根据显示内容信息和显示格式信息构建富文本消息的显示视图的示例性实现方式的流程图;图3是根据显示格式信息对文本信息对应的文本绘制所述显示视图的示例性实现方式的流程图;图4是本公开的一种实施方式提供的富文本消息显示装置的框图;图5是本公开的一种实施方式提供的电子设备的结构示意图。具体实施方式下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。图1所示,为本公开的一种实施方式提供的富文本消息显示方法的流程图,如图1所示,所述方法包括:在S11中,消息子线程根据从服务器接收的富文本消息,确定富文本消息对应的显示内容信息和显示格式信息。其中,在本公开提供实施例中,在从服务器的消息接口接收到富文本消息时,是通过消息子线程进行接收,并通过该消息子线程对富文本消息进行解析,从而获取该显示内容信息和显示格式信息。其中,以直播间评论场景为例,该显示内容信息可以是具体评论的内容,该显示格式信息则用于表示该评论的内容如何显示,如采用何种字体、字号、颜色等等。其中,对富文本消息进行解析为本领域的常规技术,在此不再赘述。在S12中,根据显示内容信息和显示格式信息构建富文本消息的显示视图。其中,显示视图用于表示所述富文本消息在显示区域中显示时的具体表示,例如,在富文本消息在评论区内显示的最终表示。示例地,可以预先在每一消息子线程中构建并缓存一定数量的ItemView,因此,在构建该富文本消息的显示视图时可以直接使用该ItemView,降低创建ItemView的开销。在S13中,向消息主线程发送显示视图,以由所述消息主线程显示所述显示视图。其中,消息子线程在构建显示视图后,可以将该显示视图抛出给消息主线程处理,因此,消息主线程在本文档来自技高网...
【技术保护点】
1.一种富文本消息显示方法,其特征在于,所述方法包括:/n消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息;/n根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图;/n向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。/n
【技术特征摘要】
1.一种富文本消息显示方法,其特征在于,所述方法包括:
消息子线程根据从服务器接收的富文本消息,确定所述富文本消息对应的显示内容信息和显示格式信息;
根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图;
向消息主线程发送所述显示视图,以由所述消息主线程显示所述显示视图。
2.根据权利要求1所述的方法,其特征在于,所述显示内容信息包括文本信息和图片信息,所述根据所述显示内容信息和所述显示格式信息构建所述富文本消息的显示视图,包括:
根据所述图片信息,获取与所述图片信息对应的图片;
在获取所述图片后,根据所述显示格式信息对所述文本信息对应的文本绘制所述显示视图,并基于所述显示格式信息中指示的所述图片的显示位置将所述图片拼接至所述显示视图。
3.根据权利要求2所述的方法,其特征在于,所述根据所述图片信息,获取与所述图片信息对应的图片,包括:
在预设的图片库中查询与所述图片信息对应的图片;
若查询到所述图片,从所述图片库中获取所述图片;
若未查询到所述图片,根据所述图片信息从所述服务器请求所述图片;
所述方法还包括:
将从所述服务器请求到的图片存储在所述图片库中。
4.根据权利要求2所述的方法,其特征在于,所述根据所述显示格式信息对所述文本信息对应的文本绘制所述显示视图,包括:
根据所述显示格式信息中指示的所述文本信息对应的显示位置,确定所述文本信息对应的显示宽度;
基于所述文本信息对应的文本、所述显示格式信息和所述显示宽度确定所述文本信息对应的显示高度;
在所述文本信息对应的所述显示宽度和所述显示高度形成的区域中,根据所述显示格式信息和所述文本绘制所述显示视图。
...
【专利技术属性】
技术研发人员:邓卓尧,
申请(专利权)人:北京字节跳动网络技术有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。