消息显示方法和装置与流程

文档序号:11154451阅读:176来源:国知局
消息显示方法和装置与制造工艺

本发明涉及智能终端技术领域,特别是涉及一种消息显示方法和消息显示方法装置。



背景技术:

手机等移动智能终端操作系统的消息提示框,属于一种用于在系统设置和/或系统中运行的应用程序界面上显示的消息提示机制,以向用户生成简单的提示信息,所述提示信息可为系统运行信息、应用程序的运行信息或系统/应用程序对用户操作的响应信息等。

现有的消息提示机制存在缺陷,需要改进。



技术实现要素:

本发明实施例提供了一种消息显示方法和装置,能够使得重要的消息信息及时被显示出来。

本发明一方面提供一种消息显示方法,包括:

在检测到预设操作事件时,创建所述操作事件对应的第一消息对象;所述第一消息对象的属性信息包括预设的用于显示控制的属性,在创建所述第一消息对象时根据预设的所述操作事件对应的显示控制属性值对所述属性进行赋值;

检测所述第一消息对象的所述属性的值是否为预设值,若是,启动预设的优化显示模式对所述第一消息对象进行显示;所述预设的优化显示模式为对所述第一消息对象进行优先显示的模式。

本发明另一方面提供一种消息显示装置,包括:

消息创建模块,用于在检测到预设操作事件时,创建所述操作事件对应的第一消息对象;所述第一消息对象的属性信息包括预设的用于显示控制的属性,在创建所述第一消息对象时根据预设的所述操作事件对应的显示控制属性值对所述属性进行赋值;

模式切换模块,用于检测所述第一消息对象的所述属性的值是否为预设值,若是,启动预设的优化显示模式对所述第一消息对象进行显示;所述优化显示模式为对所述第一消息对象进行优先显示的模式。

基于上述实施例提供的消息显示方法和装置,在检测到预设操作事件,创建所述操作事件对应的新的消息对象之后,通过检测该消息对象的用于显示控制的属性值,判断是否启动预设的优化显示模式,在所述优化显示模式下能够对新的消息对象进行优先显示。由此,对于不同的消息对象可采用不同的显示模式进行显示,使得重要的提示信息能够及时被显示出来。

附图说明

图1为一个实施例中的本发明方案的工作环境示意图;

图2为一实施例的消息显示方法的示意性流程图;

图3为另一实施例的消息显示方法的示意性流程图;

图4为另一实施例的消息显示方法的流程示意图;

图5为一实施例的消息显示装置的示意性结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

图1为一个实施例中的本发明方案的工作环境示意图;所述工作环境为智能终端,所述智能终端至少包括通过系统总线连接的处理器、显示模组、电源接口和存储介质。其中,显示模组可用于显示智能终端应用程序界面,以及显示与用户操作事件相关的提示信息,优先为触摸显示模组,即还可用于检测用户的触摸操作事件;电源接口用于与外部电源连接,外部电源通过该电源接口向智能终端电池供电;所述存储介质中至少存储有操作系统、数据库以及一种消息显示装置,所述操作系统为智能移动终端操作系统,例如安卓系统;所述消息显示装置可用于实现本发明实施例的消息显示方法。所述智能终端可以为手机、平板电脑等,也可以是其他具有上述结构的智能设备。

结合图1及上述对工作环境的说明,以下对消息显示方法的实施例进行说明。

图2为一实施例的消息显示方法的示意性流程图;如图2所示,本实施例中的消息显示方法包括步骤:

S11,检测到预设操作事件,在检测到预设操作事件时创建所述操作事件对应的第一消息对象;所述第一消息对象的属性信息包括预设的用于显示控制的属性,在创建所述第一消息对象时根据预设的所述操作事件对应的显示控制属性值对所述属性进行赋值。

所述消息对象指的是能够在终端当前操作界面上显示的提示信息,并且所述消息对象在显示时不会获取焦点信息,无法响应用户对其的点击或者移动等操作,例如安卓系统下的Toast消息提示框。

用户操作智能终端时,包括触摸屏操作或者按键操作,操作事件包括应用程序界面下的操作事件,或者在系统界面下的操作事件。其中,应用程序例如社交软件、购物软件或者游戏软件等,所述系统界面例如系统时间设置界面、系统语言设置界面或者网络连接设置界面等。用户操作智能终端时,并非所有操作事件都会生成一对应的消息对象,事实上,能够生成一对应的消息对象的预设操作事件通常是由终端运行的操作系统以及运行在该操作系统中的具体应用程序设定。

S12,检测所述第一消息对象的所述属性的值是否为预设值,若是,启动预设的优化显示模式对所述第一消息对象进行显示;所述优化显示模式为对所述第一消息对象进行优先显示的模式。

默认情况下,智能终端对于生成的消息对象采用常规显示模式进行显示。即若当前有其他消息对象正处于显示状态,则将新的消息对象添加到一消息显示任务队列中,并对所述消息显示任务队列中的消息对象按照时间戳先后依次进行显示。具体包括:检测当前显示的消息对象的显示时长是否届满,若是,退出该消息对象的显示,从所述消息显示任务队列中删除该消息对象,然后对所述消息显示任务队列中剩余的消息对象按照时间戳的先后依次进行显示。当在较短时间内检测到连续多个设定操作事件时,系统会创建多个消息对象,因此新的消息对象需进入消息显示任务队列中排队,直到在其之前创建的消息对象均显示之后才能显示,需等待较长的时间。

在一优选实施例中,预先对终端系统中与所述消息对象对应的控件设置一用于显示控制的属性变量,在创建消息对象时还需对该变量进行赋值。例如开发者可预先对各操作事件对应的消息对象设置一显示控制属性值,在创建消息对象时,获取预设的显示控制属性值对所述消息对象的所述属性变量进行赋值。

在一优选实施例中,设所述属性变量为一逻辑变量,若有的操作事件的提示信息内容比较重要、需要及时显示,则预先设置其对应的显示控制属性值为true;反之,若有的操作事件的提示信息内容的重要性较低,则预先设置其对应的显示控制属性值为false;当有新的消息对象被创建时,检测所述新的消息对象的所述属性变量的值,若为true,则表明需及时显示该消息对象,启动预设的优化显示模式对所述新的消息对象进行优先显示;若为false,则无需对所述新的消息对象进行优先显示,而是按照常规模式对所述新的消息对象进行显示。因此,所述属性变量相当于优化显示模式的开关值,在创建新的消息对象之后,根据新的消息对象的所述属性变量的值判定是否启动优化显示模式,若启动优化显示模式,则能够及时对所述新的消息对象进行显示,减少其等待的时间。

为了更清楚的对本发明消息显示方法进行说明,参考图3所示,下面以安卓系统终的Toast对象为例,对本发明的消息显示方法做具体说明,包括如下步骤:

S301,预先对系统的Toast控件设置一用于显示控制的属性变量,所述属性变量为逻辑变量,假设为变量T;分别对各操作事件对应的Toast对象设置一显示控制属性值。

例如,对于操作事件的提示信息内容比较重要的,设置其对应的Toast对象的显示控制属性值为逻辑真(例如:true或者1);反之,对于操作事件的提示信息内容的重要性较低,则预先设置其对应的Toast对象的显示控制属性值为逻辑假(例如false或者0)。

S302,检测是否发生预设操作事件,若是,执行下一步骤。

S303,创建操作事件对应的第一Toast对象;在创建所述第一Toast对象时根据预设的所述操作事件对应的显示控制属性值对所述变量T进行赋值。

在创建第一Toast对象之后,将该第一Toast对象放入消息显示任务队列中。

S304,检测所述第一Toast对象的变量T是否为预设值,若是,启动优化显示模式,执行下一步骤,否则,执行步骤S308。

本实施例中,所述预设值为逻辑真。

S305,在优化显示模式下,检测当前是否有其他Toast对象(即第二Toast对象)处于显示状态,若有,执行下一步骤,否则,执行步骤S307。

在一优选实施例中,检测当前是否有其他Toast对象处于显示状态的方法为:检测当前的消息显示任务队列中的Toast对象的数量是否为0;若是,作为判断为当前没有其他Toast对象处于显示状态;若否,判断为当前有其他Toast对象处于显示状态。在该实施例中,当一Toast对象退出显示时,需及时从所述消息显示任务队列中将其删除。

S306,退出所述其他Toast对象的显示。

在一优选实施例中,在检测到有其他Toast对象正处于显示状态时,立即退出所述其他Toast对象的显示,以执行下一步骤。该方式下,对于所述第一Toast对象来说,无需等待所述其他Toast对象的设定显示时长届满。

在另一优选实施例中,在检测到有其他Toast对象正处于显示状态时,还会检测所述其他Toast对象的所述变量T的值是否为所述预设值,若是,则等待所述其他Toast对象的设定显示时长届满时,才退出所述其他Toast对象的显示,执行下一步骤。在该方式下,对于重要程度较高的Toast对象,可保证其显示时长,防止其被提前关闭。

S307,对所述第一Toast对象进行显示。

S308,启动常规显示模式对所述第一Toast对象进行显示。

本实施例中,在常规显示模式下,即是对所述消息显示任务队列中的若干Toast对象按照时间戳先后依次进行显示。

在一优选实施例中,上述消息显示方法在智能终端产品应用层面的实施过程包括:用户操作应用界面,且该操作事件能够触发系统生成一Toast对象;系统开始创建Toast对象,将新的Toast对象放入消息显示任务队列中;判断消息显示任务队列中是否有其他Toast对象正在显示;如果有,则先关闭该Toast对象,再显示所述新的Toast对象;如果没有,则直接显示所述新的Toast对象。对于内容比较重要、需要及时显示的Toast对象,通过该方式可以减小其等待时间,及时对其进行显示。如图4所示,在一优选实施例中,上述消息显示方法的实现流程可如下:

S401,用户在手机上打开一应用程序;

S402,在该应用程序界面上先后连续进行了三项操作(分别为操作事件A、操作事件B和操作事件C),且每项操作事件均能够触发手机系统生成一消息提示框(分别为消息提示框1、消息提示框2和消息提示框3)。

S403,判断用户最后进行的操作事件C所对应的消息提示框3是否被设置为重要消息?若是,执行步骤S404;若否,执行步骤S405。

S404,假设消息提示框1、消息提示框2均为普通的消息提示(即未被设置为重要消息),则用户在执行操作事件C后,操作事件C对应的消息提示框3可先于消息提示框1和消息提示框2被显示出来,即在当前的应用程序界面上将显示消息提示框3,显示的提示消息与用户最近的操作事件C对应,因此用户可及时知晓系统对操作事件C的响应信息。

S405,若消息提示框3未被设置为重要消息,则消息提示框3将等到消息提示框1和消息提示框2均显示之后才会被显示出来,因此用户在执行操作事件C后,在当前的应用程序界面上实际上显示的是消息提示框1或消息提示框2,对应的提示信息与用户最近的操作事件C并不对应。

对应的,上述消息显示方法在相同技术层面的实施过程包括:

1、在安卓系统中,Toast显示机制是在NotificationManagerService服务中实现的,因此预先将所述优化显示模式设置在该服务中实现。

2、应用端显示Toast对象的技术实现方式包括:

首先,调用Toast类的makeText()方法,创建一个新的Toast对象;

然后,调用Toast类的show()方法,对所述Toast对象进行显示。

Toast类的show()方法里面有一个关键实现方法,会调用到NotificationManagerService的enqueueToast()方法。因此预先将所述优化显示模式的方案设置在enqueueToast()方法中执行。具体包括:首先把当前屏幕上正在显示的Toast提示框关闭,然后对当前的所述变量T为逻辑真的新Toast对象进行显示。实现方法例如:

通过上述实施例的消息显示方法,对于新的消息对象,可启动预设的优化显示模式对其进行优先显示,使得重要程度较高的新的消息对象能够及时显示出来,减小其显示等待时间。

需要说明的是,对于前述的各方法实施例,为了简便描述,将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。此外,还可对上述实施例进行任意组合,得到其他的实施例。

基于与上述实施例中的消息显示方法相同的思想,本发明还提供消息显示装置,该装置可用于执行上述消息显示方法。为了便于说明,消息显示装置实施例的结构示意图中,仅仅示出了与本发明实施例相关的部分,本领域技术人员可以理解,图示结构并不构成对装置的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

图5为本发明一实施例的消息显示装置的示意性结构图;如图5所示,本实施例的消息显示装置包括:消息创建模块410和模式切换模块420,各模块详述如下:

上述消息创建模块410,用于在检测到预设操作事件时,创建所述操作事件对应的第一消息对象;所述第一消息对象的属性信息包括预设的用于显示控制的属性,在创建所述第一消息对象时根据预设的所述操作事件对应的显示控制属性值对所述属性进行赋值。

上述模式切换模块420,用于检测所述第一消息对象的所述属性的值是否为预设值,若是,启动预设的优化显示模式对所述第一消息对象进行显示;所述优化显示模式为对所述第一消息对象进行优先显示的模式。

在一优选实施例中,所述消息创建模块410,还用于在创建所述操作事件对应的第一消息对象之后,将所述第一消息对象添加到消息显示任务队列中。所述模式切换模块420,还用于若所述第一消息对象的所述属性的值不是预设值,则启动常规显示模式对所述第一消息对象进行显示。

进一步的,所述消息显示装置还包括有:第一显示模块430和第二显示模块440.

所述第一显示模块430,用于若检测到所述模式切换模块的启动预设的优化显示模式对所述第一消息对象进行显示的消息,根据所述消息显示任务队列检测当前是否有第二消息对象处于显示状态;若有,则退出所述第二消息对象的显示,并对所述第一消息对象进行显示;若没有,则立即对所述第一消息对象进行显示。所述第二显示模块440,用于若检测到所述模式切换模块的启动常规显示模式对所述第一消息对象进行显示的消息,对所述消息显示任务队列中的消息对象按照时间戳先后依次进行显示。

进一步的,所述第一显示模块330中还包括:延迟显示单元和即时显示单元。

所述延迟显示单元,用于若正在显示的第二消息对象的所述属性的值为预设值,则在所述第二消息对象的设定显示时长届满时退出所述第二消息对象的显示,对所述第一消息对象进行显示。所述即时显示单元,用于若正在显示的第二消息对象的所述属性的值不是预设值,则立即退出所述第二消息对象的显示,并对所述第一消息对象进行显示。

进一步的,所述第一显示模块430还包括:状态检测单元,用于检测当前消息显示任务队列中的消息对象的数量是否为0;若是,判断为当前没有第二消息对象处于显示状态;若否,判断为当前有第二消息对象处于显示状态。

在一优选实施例中,所述消息对象为Toast对象。所述消息显示装置还包括有:设置模块(图4中未示出),用于预先对系统的Toast控件设置一用于显示控制的属性变量,且所述属性变量为逻辑变量;以及,对各操作事件对应的Toast对象设置一显示控制属性值。

通过所述设置模块,对于操作事件的提示信息内容比较重要的,可设置其对应的Toast对象的显示控制属性值为逻辑真(例如:true或者1);反之,对于操作事件的提示信息内容的重要性较低,可设置其对应的Toast对象的显示控制属性值为逻辑假。由此对于不同的Toast对象可采用不同的显示模式进行显示,使得重要的提示信息能够及时被显示出来。

需要说明的是,上述示例的消息显示装置的实施方式中,各模块之间的信息交互、执行过程等内容,由于与本发明前述方法实施例基于同一构思,其带来的技术效果与本发明前述方法实施例相同,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

此外,上述示例的消息显示装置的实施方式中,各功能模块的逻辑划分仅是举例说明,实际应用中可以根据需要,例如出于相应硬件的配置要求或者软件的实现的便利考虑,将上述功能分配由不同的功能模块完成,即将所述消息显示装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。其中各功能模既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,作为独立的产品销售或使用。所述程序在执行时,可执行如上述各方法的实施例的全部或部分步骤。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。

以上所述实施例仅表达了本发明的几种实施方式,不能理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

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