一种视图显示方法、装置、电子设备及存储介质与流程

文档序号:16530246发布日期:2019-01-05 10:41阅读:139来源:国知局
一种视图显示方法、装置、电子设备及存储介质与流程

本发明实施例涉及直播间视图显示技术领域,尤其涉及一种视图显示方法、装置、电子设备及存储介质。



背景技术:

目前,基于ios平台的直播间应用程序发展迅速,深受用户喜爱。视图作为直播间重要的功能组件,承担着直播间页面显示的重要责任。

传统的视图显示过程为:当需要显示一个特定视图时,则将该特定视图的视图对象直接添加至容器视图的最上面进行显示,但是该特定视图有可能会遮挡住其他需要显示在该特定视图上面的视图,为了避免该情况的发生,传统方案中设置有周期性的页面刷新机制。刷新页面时获取需要显示在所述该特定视图上面的视图对象,然后将获取到的视图对象依次移动至容器视图的最上面进行显示。

因此,传统的视图显示方案存在如下缺陷:每显示一个新视图,都要对其他每个需要显示在新视图上面的视图对象按照上述页面刷新机制进行显示层级的调整,当需要显示在新视图上面的视图对象数量过多时,或者频繁显示不同的新视图时,很容易遗漏一些视图对象的层级调整,导致各视图之间的显示层级混乱。且上述页面刷新机制需要预先根据每个视图之间的层级关系进行制定,当某个视图由于增加业务功能导致其显示层级发生变化时,或者引入新业务的视图时,则对上述页面刷新机制的修改工作量非常庞大,甚至无法实现修改,导致各视图之间的显示层级混乱。



技术实现要素:

本发明实施例提供一种视图显示方法、装置、电子设备及存储介质,可实现各视图的正确显示,对各视图的显示层级进行有效管理,避免出现视图显示层级混乱的问题。

为实现上述目的,本发明实施例采用如下技术方案:

第一方面,本发明实施例提供了一种视图显示方法,所述方法包括:

确定各视图之间的显示优先级,并为各视图添加优先级标识;

当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图;

通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示。

进一步的,所述确定各视图之间的显示优先级,包括:

基于各视图的业务功能确定各视图在根视图的显示层级;

根据各视图在根视图的显示层级确定各视图之间的显示优先级。

进一步的,所述向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图,包括:

通过调用如下系统函数向容器视图发送携带优先级标识的所述待显示视图添加请求:

(void)ui_requestaddcoverview:(uiview*)viewwithpriority:(dyboxlayoutpriority)prioritydescriptor:(nsstring*)descriptor

其中,参数uiview*表示所述待显示视图,参数dyboxlayoutpriority表示所述待显示视图的优先级标识,参数nsstring*表示容器视图的描述符。

进一步的,所述通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示,包括:

通过所述容器视图对发出添加请求的各待显示视图的优先级标识进行排序;

按照优先级标识从低到高的顺序依次对各待显示视图进行显示;

其中,所述优先级标识为数字。

进一步的,所述通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示,包括:

通过所述容器视图对发出添加请求的各待显示视图以及正处于显示状态的视图的优先级标识进行排序;

按照优先级标识从低到高的顺序依次对各视图进行显示;

其中,所述各视图包括所述待显示视图和正处于显示状态的视图,所述优先级标识为数字。

进一步的,对各视图进行显示,包括:

通过调用视图显示接口对各视图进行显示。

第二方面,本发明实施例提供了一种视图显示装置,所述装置包括:

优先级确定模块,用于确定各视图之间的显示优先级,并为各视图添加优先级标识;

添加请求发送模块,用于当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图;

显示模块,用于通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示。

第三方面,本发明实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的视图显示方法。

第四方面,本发明实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时实现如上述第一方面所述的视图显示方法。

本发明实施例提供的一种视图显示方法,通过确定各视图之间的显示优先级,并为各视图添加优先级标识,通过优先级标识建立各视图之间的直接关系,当某个视图有显示需求时,通过向容器视图发送携带其优先级标识的添加请求,然后容器视图根据该优先级标识与其他需要显示的视图优先级标识进行比较,并根据比较结果对各需要显示的视图进行显示,从而避免新添加的视图遮挡其他视图的问题,解决了各视图显示层级混乱的问题,对各视图的显示层级进行了有效管理,确保各视图的正确显示。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。

图1为本发明实施例一提供的一种视图显示方法流程示意图;

图2为本发明实施例二提供的一种视图显示方法流程示意图;

图3为本发明实施例三提供的一种视图显示装置结构示意图;

图4为本发明实施例四提供的一种电子设备的结构示意图。

具体实施方式

为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

实施例一

图1为本发明实施例一提供的一种视图显示方法流程示意图。本实施例公开的视图显示方法可用于解决直播间视图显示层级混乱的问题,所述视图显示方法可以由视图显示装置来执行,该装置可由软件和/或硬件实现,并一般集成在基于ios系统的终端中,例如智能手机或者电脑等。具体参见图1所示,所述视图显示方法包括如下步骤:

110、确定各视图之间的显示优先级,并为各视图添加优先级标识。

示例性的,所述确定各视图之间的显示优先级包括:

基于各视图的业务功能确定各视图在根视图的显示层级;

根据各视图在根视图的显示层级确定各视图之间的显示优先级。

其中,所述根视图为一个用于显示子视图的空白页面,例如手机桌面的背景页面即为一种根视图,桌面上的各种客户端即为显示在根视图上的子视图,本实施例中将所述子视图统称为视图。所述显示层级指显示层的高低,例如视图2需要显示在视图1的上面,即视图2的显示层级相比于视图1的显示层级较高,视图1的显示层级相比于视图2的显示层级较低,因此,可设定视图1的显示优先级低于视图2的显示优先级,即显示层级越高的视图其对应的显示优先级越高。

视图的业务功能具体指该视图的功能、作用。通常,视图依据其要实现的业务功能被创建,不同的业务功能对应不同的视图。例如用于实现登录功能的视图称为登录框视图,登录框视图需要显示在对应的根视图的最上面,以使用户通过登录框实现登录功能,因此,登录框视图通常具有最高的显示优先级。

为了快速识别各视图的显示优先级,可以为各视图添加数字形式的优先级标识,例如所述优先级标识为1,2,3,……n,其中n为自然数,数字越大表示优先级越高,优先级越高表示对应视图的显示层级越高。

120、当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图。

其中,当某个视图接收到显示指令时,则表示该视图具有显示需求,该视图需要进行页面显示。例如,当用户点击了直播间的“登录”按钮,则触发了显示“登录框视图”的指示,“登录框视图”接收到显示指令,即“登录框视图”需要进行页面显示,此时则向容器视图发送携带优先级标识的“登录框视图”视图添加请求,以将“登录框视图”添加至容器视图进行显示。其中所述容器视图为用于显示根视图的显示框架,若容器视图中没有添加任何视图,则只显示空白页面的根视图。

示例性的,所述向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图,包括:

通过调用如下系统函数向容器视图发送携带优先级标识的所述待显示视图添加请求:

(void)ui_requestaddcoverview:(uiview*)viewwithpriority:(dyboxlayoutpriority)prioritydescriptor:(nsstring*)descriptor

其中,参数uiview*表示所述待显示视图,参数dyboxlayoutpriority表示所述待显示视图的优先级标识,参数nsstring*表示容器视图的描述符,该描述符用于标记具体的容器视图。通常,会设置多个容器视图来适配不同的业务,例如不同的弹幕容器视图、视频流容器视图或者活动容器视图等,因此,为了将容器视图之间进行区分在发送添加申请时需要携带容器视图的描述符,以标识具体是向哪个容器视图发送添加请求。

130、通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示。

具体的,所述通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示,包括:

通过所述容器视图对发出添加请求的各待显示视图以及正处于显示状态的视图的优先级标识进行排序;

按照优先级标识从低到高的顺序依次对各视图进行显示;

其中,所述各视图包括所述待显示视图和正处于显示状态的视图,所述优先级标识为数字。

所述视图容器用于根据各视图的优先级标识对各视图的显示层级进行管理,具体的,每添加一个新视图至容器视图,都执行一次将该新视图以及其他已经添加在容器视图中的视图的优先级标识进行排序的操作,然后根据优先级标识从低到高的顺序依次对各视图进行显示,即最先显示优先级标识最低的视图,最后显示优先级标识最高的视图。相比于被后显示的视图,被先显示的视图显示在根视图的较低层,相比于被先显示的视图,被后显示的视图显示在根视图的较高层。对于优先级标识相同的视图,则按照发出添加请求的时间先后顺序依次进行显示,先发出添加请求的视图被优先显示,后发出添加请求的视图被后显示,例如视图1、视图2、视图3和视图4的优先级标识相同,发出添加请求的时间先后顺序为视图4、视图2、视图1和视图3,则依次对视图4、视图2、视图1和视图3进行显示。

示例性的,对各视图进行显示,包括:

通过调用视图显示接口对各视图进行显示。

为了对直播间中各种业务功能的视图进行有效管理,将直播间中各种业务功能的视图根据视图的实际使用场景划分三种模式,分别是网格模式、依附模式和覆盖模式,其中,所述网格模式下的视图是指彼此之间存在显示隐藏依赖以及位置依赖关系的视图,例如游戏入口图标的视图、抽奖的视图、广告入口视图、领鱼丸视图以及宝箱的视图等;所述依附模式下的视图通常指在跟入口相关的附属设置的视图,依附模式下的视图通过点击页面其他区域可被关闭,例如横屏选择线路视图,用户侧横屏的时候显示的高清视图;所述覆盖模式下的视图指彼此之间具有显示层级关系的视图,呈现一种一层一层往上叠的页面显示,例如弹框视图。

本实施例提供的一种视图显示方法,通过优先级标识建立各视图之间的直接关系,当某个视图有显示需求时,通过向容器视图发送携带其优先级标识的添加请求,然后容器视图根据该优先级标识与其他需要显示的视图优先级标识进行比较,并根据比较结果对各需要显示的视图进行显示,从而避免新添加的视图遮挡其他视图的问题,解决了各视图显示层级混乱的问题,对各视图的显示层级进行了有效管理,确保各视图的正确显示。

实施例二

图2为本发明实施例二提供的一种视图显示方法流程示意图。在上述实施例的基础上,本实施例对上述步骤130“通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示”进行了具体化,针对所述容器视图中正处于显示状态的视图为零的情况给出了解决方案。具体参见图2所示,该方法可以包括如下步骤:

210、确定各视图之间的显示优先级,并为各视图添加优先级标识。

220、当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图。

230、通过所述容器视图对发出添加请求的各待显示视图的优先级标识进行排序。

相比于上述实施例,本实施例针对所述容器视图中正处于显示状态的视图为零,即直接将各待显示视图添加至空白的页面,此时无需担心新视图会遮挡住已经显示的视图,只需使各待显示视图之间彼此不互相影响即可,因此,只需对发出添加请求的各待显示视图的优先级标识进行排序,确定好各待显示视图之间的层级关系,然后按照顺序进行显示即可。

240、按照优先级标识从低到高的顺序依次对各待显示视图进行显示。

其中,所述优先级标识为数字。

本实施例提供的一种视图显示方法,通过优先级标识建立各视图之间的直接关系,当某个视图有显示需求时,容器视图根据该优先级标识与其他需要显示的视图优先级标识进行比较,并根据比较结果对各需要显示的视图进行显示,确保了各视图的正确显示,对各视图的显示层级进行了有效管理,解决了各视图显示层级混乱的问题。

实施例三

图3为本发明实施例三提供的一种视图显示装置结构示意图。参见图3所示,所述装置包括:优先级确定模块310、添加请求发送模块320和显示模块330;

其中,优先级确定模块310,用于确定各视图之间的显示优先级,并为各视图添加优先级标识;

添加请求发送模块320,用于当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图;

显示模块330,用于通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示。

进一步的,优先级确定模块310包括:

显示层级确定单元,用于基于各视图的业务功能确定各视图在根视图的显示层级;

优先级确定单元,用于根据各视图在根视图的显示层级确定各视图之间的显示优先级。

进一步的,添加请求发送模块320具体用于:

通过调用如下系统函数向容器视图发送携带优先级标识的所述待显示视图添加请求:

(void)ui_requestaddcoverview:(uiview*)viewwithpriority:(dyboxlayoutpriority)prioritydescriptor:(nsstring*)descriptor

其中,参数uiview*表示所述待显示视图,参数dyboxlayoutpriority表示所述待显示视图的优先级标识,参数nsstring*表示容器视图的描述符。

进一步的,显示模块330包括:

排序单元,用于通过所述容器视图对发出添加请求的各待显示视图的优先级标识进行排序;或者通过所述容器视图对发出添加请求的各待显示视图以及正处于显示状态的视图的优先级标识进行排序;

显示单元,用于按照优先级标识从低到高的顺序依次对各待显示视图进行显示;

其中,所述各视图包括所述待显示视图和正处于显示状态的视图,所述优先级标识为数字。

进一步的,显示单元具体用于:

通过调用视图显示接口对各视图进行显示。

进一步的,所述视图的模式为覆盖模式。

本实施例提供的视图显示装置,通过优先级标识建立各视图之间的直接关系,当某个视图有显示需求时,通过向容器视图发送携带其优先级标识的添加请求,然后容器视图根据该优先级标识与其他需要显示的视图优先级标识进行比较,并根据比较结果对各需要显示的视图进行显示,从而避免新添加的视图遮挡其他视图的问题,解决了各视图显示层级混乱的问题,对各视图的显示层级进行了有效管理,确保各视图的正确显示。

实施例三

图4为本发明实施例三提供的一种电子设备的结构示意图。如图4所示,该电子设备包括:处理器670、存储器671及存储在存储器671上并可在处理器670上运行的计算机程序;其中,处理器670的数量可以是一个或多个,图4中以一个处理器670为例;处理器670执行所述计算机程序时实现如上述实施例一中所述的视图显示方法。如图4所示,所述电子设备还可以包括输入装置672和输出装置673。处理器670、存储器671、输入装置672和输出装置673可以通过总线或其他方式连接,图4中以通过总线连接为例。

存储器671作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中视图显示装置/模块(优先级确定模块310、添加请求发送模块320和显示模块330等)。处理器670通过运行存储在存储器671中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的视图显示方法。

存储器671可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器671可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器671可进一步包括相对于处理器670远程设置的存储器,这些远程存储器可以通过网络连接至电子设备/存储介质。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置672可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。输出装置673可包括显示屏等显示设备。

实施例五

本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种视图显示方法,该方法包括:

确定各视图之间的显示优先级,并为各视图添加优先级标识;

当待显示视图需要进行页面显示时,向容器视图发送携带优先级标识的所述待显示视图添加请求,以将所述待显示视图添加至容器视图;

通过所述容器视图根据所述待显示视图的优先级标识对所述待显示视图进行页面显示。

当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的视图显示相关操作。

通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、闪存(flash)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,存储介质,或者网络设备等)执行本发明各个实施例所述的。

注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1