应用界面的视图颜色的更新方法及装置、介质及电子设备与流程

    专利2022-07-08  89


    本公开涉及计算机领域,具体而言,涉及一种应用界面的视图颜色的更新方法、应用界面的视图颜色的更新装置、计算机可读存储介质及电子设备。



    背景技术:

    随着互联网的发展,用户对于应用程序的用户界面个性化设置的需求越来越普遍。在一些情况下,需要对应用程序的颜色进行改变以贴合实际场景。例如,在清明节时,将应用程序的界面进行置灰展示等。

    通常情况下,如果需要更改应用程序本地的视图色值,有以下两种方案:(1)将应用程序的视图色值放入服务器端进行色值替换,然后再下发至应用程序进行展示;(2)在应用程序本地写多个配色方案。

    然而,上述两种方案的工作量巨大,不能快速、准确的进行视图色值的更新。

    需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。



    技术实现要素:

    本公开的目的在于提供一种应用界面的视图颜色的更新方法及应用界面的视图颜色的更新装置、计算机可读存储介质及电子设备,可以对用用界面的视图颜色进行快速更新。

    本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

    根据本公开的第一方面,提供了一种应用界面的视图颜色的更新方法,包括:获取应用界面的视图数据以及视图数据对应的第一色值,其中,所述应用包括颜色函数;获取颜色转换指令,并根据所述颜色转换指令在颜色函数前插入色值转换函数;根据所述色值转换函数对所述第一色值进行转换得到第二色值;所述颜色函数根据所述第二色值更新所述视图的颜色。

    在本公开的一种示例性实施例中,基于前述方案,根据所述颜色转换指令调用提取函数以及所述提取函数对应的色值转换函数;获取所述颜色函数的位置,并使用所述提取函数将所述色值转换函数插入所述颜色函数之前。

    在本公开的一种示例性实施例中,基于前述方案,置灰转换指令,其中,所述置灰转换指令用于将所述视图的颜色更新为灰色。

    在本公开的一种示例性实施例中,基于前述方案,获取所述第一色值以及所述色值转换函数对应的色值转换公式;根据所述色值转换公式将所述第一色值转换为第二色值。

    在本公开的一种示例性实施例中,基于前述方案,所述颜色函数接收所述第二色值,其中,所述颜色函数包括颜色赋值算法;根据所述颜色赋值算法对所述视图赋予所述第二色值以更新所述视图的颜色。

    在本公开的一种示例性实施例中,基于前述方案,所述第一色值与所述第二色值为十进制或十六进制。

    在本公开的一种示例性实施例中,基于前述方案,获取所述第一色值以及所述第一色值对应的进制;获取所述第二色值以及所述第二色值对应的进制;将所述第一色值对应的进制或所述第二色值的进制进行统一换算。

    根据本公开的第二方面,提供了一种应用界面的视图颜色的更新装置,包括:色值获取模块,用于获取应用界面的视图数据以及视图数据对应的第一色值,其中,所述应用包括颜色函数;指令获取模块,用于获取颜色转换指令,并根据所述颜色转换指令在颜色函数前插入色值转换函数;色值转换模块,用于根据所述色值转换函数对所述第一色值进行转换得到第二色值。颜色更新模块,用于所述颜色函数根据所述第二色值更新所述视图的颜色。

    根据本公开的第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述实施例中第一方面所述的应用界面的视图颜色的更新方法。

    根据本公开的第四方面,提供了一种电子设备,包括:

    处理器;以及

    存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上述实施例中第一方面所述的应用界面的视图颜色的更新方法。

    本公开实施例提供的技术方案可以包括以下有益效果:

    本公开的一种实施例所述提供的应用界面的视图颜色的更新方法中,在获取到应用界面的视图的色值之后,可以根据颜色转换指令在颜色函数之前插入色值转换函数,并根据色值转换函数进行色值转换,最后再根据转换后的色值更新视图颜色。本公开的实施例,可以在颜色函数获取色值之前捕获色值,并根据色值转换函数对色值进行转换,从而不需要将视图色值上传到服务器进行色值替换,进而可以快速准确的对应用界面的视图颜色进行更新。

    应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

    附图说明

    此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:

    图1示意性示出了可以应用本公开实施例的一种应用界面的视图颜色的更新方法的示例性系统架构的示意图;

    图2示意性示出本公开示例性实施例中应用界面的视图颜色的更新方法的流程图;

    图3示意性示出本公开示例性实施例中使用提取函数将色值转换函数插入至颜色函数之前的流程图;

    图4示意性示出本公开示例性实施例中根据色值转换公式将第一色值转换为第二色值的流程图;

    图5示意性示出本公开示例性实施例中根据颜色赋值算法更新视图颜色的流程图;

    图6示意性示出本公开示例性实施例中对第一色值和第二色值对应的进制进行统一换算的流程图;

    图7示意性示出本公开示例性实施例中一种应用界面的视图颜色的更新装置的组成示意图;

    图8示意性示出了适于用来实现本公开示例性实施例的电子设备的计算机系统的结构示意图。

    具体实施方式

    现在将参照附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知结构、方法、装置、实现、材料或者操作以避免模糊本公开的各方面。

    附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个软件硬化的模块中实现这些功能实体或功能实体的一部分,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。

    图1示出了可以应用本公开实施例的应用界面的视图颜色的更新方法的示例性系统架构的示意图。

    如图1所示,系统架构1000可以包括终端设备1001、1002、1003中的一种或多种,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

    应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器1005可以是多个服务器组成的服务器集群等。

    用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。另外,服务器1005可以是提供各种服务的服务器。

    在一种实施例中,本公开的应用界面的视图颜色的更新方法的执行主体可以是终端设备1001、1002、1003,终端设备1001、1002、1003可以获取由终端设备1001、1002、1003发送的应用界面的视图数据以及视图数据对应的第一色值,终端设备1001、1002、1003可以获取由终端设备1001、1002、1003或服务器1005发送的颜色转换指令,并根据本公开的应用界面的视图颜色的更新方法对应用界面的视图数据以及视图数据对应的第一色值进行处理,然后将处理后得到的第二色值返回至终端设备1001、1002、1003。

    本公开中应用界面的视图颜色的更新方案,可以应用于各种应用或软件中,对各种应用或软件的界面视图进行颜色替换时,都可以使用本公开的方案。例如,对手机端某一软件的界面颜色进行替换;又如,对手机网页端的页面颜色进行替换;再如,对计算机客户端的软件界面进行替换。本公开对应用场景并不做特殊限定。

    根据本示例性实施例中所提供的应用界面的视图颜色的更新方法中,当获取到应用界面的视图数据以及视图数据对应的第一色值时,根据颜色转换指令在颜色函数前插入色值转换函数,然后根据色值转换函数将第一色值进行转换得到第二色值,使得颜色函数根据第二色值更新视图的颜色。如图2所示,该应用界面的视图颜色的更新方法可以包括以下步骤:

    s210:获取应用界面的视图数据以及视图数据对应的第一色值,其中,应用包括颜色函数;

    s220:获取颜色转换指令,并根据颜色转换指令在颜色函数前插入色值转换函数;

    s230:根据色值转换函数对第一色值进行转换得到第二色值;

    s240:颜色函数根据第二色值更新视图的颜色。

    在本示例实施方式所提供的应用界面的视图颜色的更新方法中,可以在颜色函数获取色值之前捕获色值,并根据色值转换函数对色值进行转换,从而不需要将视图色值上传到服务器进行色值替换,进而可以快速准确的对应用界面的视图颜色进行更新。

    下面,将结合附图及实施例对本示例性实施例中的应用界面的视图颜色的更新方法的步骤s210~s240进行更详细的说明。

    步骤s210,获取应用界面的视图数据以及视图数据对应的第一色值,其中,应用包括颜色函数;

    在本公开的一种示例实施例中,互联网的多种应用场景中都会使用到应用软件或应用程序,应用软件或应用程序可以采用可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,应用软件包是利用计算机解决某类问题而设计的程序的集合,多供用户使用。应用软件有多种分类,例如:办公室软件、多媒体软件、各种分析软件、协作软件、商务软件等。应用软件或应用程序可以安装在不同的操作系统中,例如:android、ios、rim、symbian、windows等。操作系统可以安装在不同的设备如各种移动终端中,移动终端基于这些开放的操作系统平台开发了多种多样的应用软件和应用程序。

    在本公开的一种示例实施例中,应用软件和应用程序通常包括应用界面,软件界面就是指软件中面向操作者而专门设计的用于操作使用及反馈信息的指令部分,在应用软件和应用程序中,涉及到颜色部分包括服务器下发的图片和界面的视图,视图可以包括启动封面、软件整体框架、软件面板、菜单界面,按钮界面,标签、图标、滚动条、菜单栏目栏、及状态栏属性的界面等,这些项目可以具有相同或不同的视图颜色。在本公开的应用界面的视图颜色的更新的方案中,可以将上述界面中的所有项目的颜色进行更新,也可以对其中的某一部分进行颜色更新。更新应用界面的视图颜色目的在于,一方面,可以使得用户进行个性化设置;另一方面,可以根据业务场景实时调整应用软件或应用程序界面的视图颜色,使得应用程序的整体风格更加贴合实际的业务场景。

    在本公开的一种示例实施例中,上述应用软件或应用程序的界面可以包括视图数据。具体而言,应用软件或应用程序的启动封面、软件整体框架、软件面板、菜单界面,按钮界面,标签、图标、滚动条、菜单栏目栏、及状态栏属性的界面等可以包括视图数据。视图数据可以包括上述项目的样式、色值、效果、位置等。

    在本公开的一种示例实施例中,应用软件或应用程序的界面对应的多种项目,可以对应有不同的色值,色值为某种颜色在不同的颜色模式中所对应的颜色值,通常使用最多的为rgb颜色模式,颜色由红色、绿色、蓝色混合而成,将颜色由一个符号来定义,这个符号由红色、绿色和蓝色的值组成(rgb),每种颜色的最小值是0,最大值是255。举例而言,如红色在rgb颜色模式中所对应的值就是(255,0,0);绿色在rgb颜色模式中所对应的值就是(0,255,0);蓝色在rgb颜色模式中所对应的值就是(0,0,255)。

    在本公开的一种示例实施例中,应用软件或应用程序可以使用各种程序设计语言设计多个函数,这些函数可以用来完成不同的功能。通常来说,应用软件或应用程序中包括颜色函数,颜色函数可以根据色值对应用软件或应用程序中具体的项目进行颜色赋值。例如,当颜色函数获取到的色值为rgb模式下的(0,255,0),则颜色函数可以根据(0,255,0)将具体的项目调整为绿色。

    在本公开的一种示例实施例中,可以在应用软件或应用程序中获取视图数据以及视图数据对应的第一色值,此处的视图数据对应的第一色值可以为应用软件或应用程序的界面的各个项目的视图数据对应的第一色值,或者,也可以是应用软件或应用程序界面整体的视图数据对应的第一色值。即,应用软件或应用程序的视图数据对应的第一色值可以有一个或者多个。本公开的方案,对于第一色值数量的多少并不做特殊限定,只要是能获取到界面对应的色值,并对其进行颜色更新即可。

    步骤s220,获取颜色转换指令,并根据颜色转换指令在颜色函数前插入色值转换函数;

    在本公开的一种示例实施例中,可以获取颜色转换指令,颜色转换指令用于对应用软件或应用程序中界面的视图颜色进行更新。颜色转换指令可以由应用软件或应用程序的用户发出,即从应用软件或应用程序的本地发出。具体的,可以在设计应用软件或应用程序时,预留颜色转换指令控件,颜色转换指令控件可以发出颜色转换指令,颜色转换指令的具体内容可以由用户进行调整,如色值、范围等;颜色转换指令也可以由服务器端发出,在一些应用场景下,需要将应用软件或应用程序的界面更新为贴合场景的颜色,此时,服务器端可以发出颜色转换指令,直接对界面颜色进行更新。颜色转换指令可以更新部分应用界面的视图颜色或者全部的应用界面的视图颜色。

    在本公开的一种示例实施例中,色值转换函数可以将多种颜色进行色值转换。举例而言,可以根据用户需求或业务需要将应用软件或应用程序中的蓝色更新为绿色,黑色更新为白色等。颜色转换指令可以包括色值转换函数,即颜色转换指令中携带色值转换函数;或者,颜色转换指令可以在服务器、应用软件和应用程序中调用色值转换函数。本公开的方案,对色值转换函数的具体功能并不做特殊限定,只要是能够根据色值转换函数将原色值转换为目标色值即可。

    在本公开的一种示例实施例中,可以根据颜色转换指令在颜色函数之前插入色值转换函数。具体而言,当颜色函数对应用软件或应用程序的界面的视图进行颜色赋值时,需要将色值发送给颜色函数,当需要对应用软件或应用程序的界面的视图颜色进行更新时,可以根据颜色转换指令的具体规则,在颜色函数之前插入色值转换函数。换而言之,可以使得色值转换函数在颜色函数之前得到应用软件或应用程序的界面的视图对应的色值,使得色值转换函数可以对视图色值进行调整。

    在本公开的一种示例实施例中,颜色转换指令可以调用提取函数以及提取函数对应的色值转换函数,并在应用软件或应用程序中查找颜色函数的位置,使用提取函数将色值转换函数插入至颜色函数之前。如图3所示,使用提取函数将色值转换函数插入至颜色函数之前,可以包括以下步骤s310~s320:

    步骤s310,根据颜色转换指令调用提取函数以及提取函数对应的色值转换函数;

    在本公开的一种示例实施例中,提取函数可以获取颜色函数的位置,并在颜色函数之前插入与提取函数对应的色值转换函数,提取函数可以设置在应用软件或应用程序中,如应用软件或应用程序的应用数据中;也可以设置在终端的储存器中,如rom中;还可以设置在服务器中。当接收到颜色转换指令时,可以在上述位置调用提取函数,提取函数可以携带色值转换函数。

    步骤s320,获取颜色函数的位置,并使用提取函数将色值转换函数插入颜色函数之前。

    在本公开的一种示例实施例中,根据颜色转换指令调用提取函数以及色值转换函数之后,可以将色值转换函数插入颜色函数之前。具体的,调取函数可以在颜色函数获取色值之前,捕获界面视图的色值,此时,颜色函数无法根据色值对界面视图进行颜色赋值,提取函数对应的色值转换函数可以获取界面视图的色值并对其做进一步的处理。

    通过上述步骤s1010~s1020,可以根据颜色函数调用提取函数以及提取函数对应的色值转换函数,并使用提取函数在颜色函数之前插入色值转换函数,可以使得色值转换函数在颜色函数之前接受到色值并对其进行处理。

    在本公开的一种示例实施例中,提取函数可以包括钩子函数,钩子函数在系统函数没有调用要处理的信息之前,钩子程序就先捕获该信息,钩子函数先得到控制权,这时钩子函数既可以加工处理(改变)该系统函数的执行行为,还可以强制结束消息的传递。具体的,钩子函数是一段用以处理系统信息的程序,通过调用,可以将钩子函数载入系统。

    在本公开的一种示例实施例中,颜色转换指令可以包括置灰转换指令。在一些应用场景中,需要将应用软件或应用程序界面的视图颜色更新为灰色。例如,清明节时需要将界面视图的颜色更改为灰色,以符合节日气息。此时,可以由本地或服务器发出置灰转换指令,将视图颜色更新为灰色。灰色可以包括深灰色和浅灰色,举例而言,可以为rgb颜色模式下的(128,128,128)。本公开对灰色的具体色值并不做特殊限定。

    步骤s230,根据色值转换函数对第一色值进行转换得到第二色值;

    在本公开的一种示例实施例中,根据颜色转换指令在颜色函数之前插入色值转换函数之后,此时,色值转换函数可以获取到第一色值,将第一色值转换为第二色值。具体的,可以根据色值转换函数将第一色值转换为对颜色转换指令对应的第二色值。举例而言,颜色转换指令为蓝色转换指令,则蓝色转换指令可以调用、获取蓝色色值转换函数,并将蓝色色值转换函数插入颜色函数之前,则蓝色色值转换函数可以获取到第一色值,并将第一色值转换为蓝色色值。色值转换函数可以用于将得到色值转换为目标色值。

    在本公开的一种示例实施例中,色值转换函数可以包括色值转换公式,在获取到第一色值之后,可以利用色值转换公式将第一色值转换为第二色值。如图4所示,根据色值转换公式将第一色值转换为第二色值,可以包括以下步骤s410~s420:

    步骤s410:获取第一色值以及色值转换函数对应的色值转换公式;

    在本公开的一种示例实施例中,色值转换函数中对应有色值转换公式,色值转换函数可以携带色值转换公式,色值转换公式也可以设置在应用软件或应用程序中,如应用软件或应用程序的应用数据中;也可以设置在终端的储存器中,如rom中;还可以设置在服务器中。色值转换函数可以在上述位置调用色值转换公式。

    步骤s420:根据色值转换公式将第一色值转换为第二色值。

    在本公开的一种示例实施例中,色值转换公式可以将第一色值转换为第二色值。色值转换公式可以包括转换因子,将第一色值与转换因子做乘积,即可得到第二色值。具体而言,在rgb颜色模式下,第一色值(rgb)1包括第一蓝色色值b1、第一绿色色值g1、第一红色色值r1,色值转换公式中包括蓝色转换因子cb、绿色转换因子cg、红色转换因子cr,

    将第一蓝色色值和蓝色转换因子、第一绿色色值和绿色转换因子、第一红色色值与红色转换因子做乘积,然后相加得到第二色值(rgb)2对应的第二蓝色色值b2、第二绿色色值g2和第二红色色值r2,其具体表达式如下:

    (rgb)2=(b1*cb,r1*cr g1*cg b1*cb,b1*cb,r1*cr g1*cg b1*cb,

    r1*cr g1*cg b1*cb)

    举例而言,当颜色转换指令为置灰转换指令时,与置灰转换指令对应的置灰转换公式的蓝色转换因子cb=0.114、绿色转换因子cg=0.587、红色转换因子cr=0.299,即置灰转换公式的表达式为:

    (rgb)2=(r1*0.299 g1*0.587 b1*0.114,r1*0.299 g1*0.587 b1*0.114,

    r1*0.299 g1*0.587 b1*0.114)

    需要说明的是,上述转换因子可以进行换算,例如,可以将转换因子缩放1000倍实现整数运算算法,缩放1000倍可以避免低速的浮点运算;还可以将转换因子缩放2的整数幂,缩放2的整数可以提高运算速度。

    除此之外,还可以采用精度相对较低的置灰转换公式,但是运算速度快。具体的,可以将第一蓝色色值b1、第一绿色色值g1、第一红色色值r1相加,把相加得到的值除3即可进行置灰,表达式如下:

    步骤s240:颜色函数根据第二色值更新视图的颜色。

    在本公开的一种示例实施例中,在根据色值转换函数将第一色值转换为第二色值之后,颜色函数就可以获取到第二色值,并给应用软件或应用程序界面的视图替换第二色值对应的颜色,从而完成视图颜色的更新。

    在本公开的一种示例实施例中,通过上述步骤s210~s240,可以在颜色函数获取色值之前捕获色值,并根据色值转换函数对色值进行转换,从而不需要将视图色值上传到服务器进行色值替换,进而可以快速准确的对应用界面的视图颜色进行更新。

    在本公开的一种示例实施例中,在颜色函数获取到第二色值之后,可以通过颜色赋值算法对视图赋予第二色值。参照图5所示,根据颜色赋值算法更新视图颜色,可以包括以下步骤s510~s520:

    步骤s510:颜色函数接收第二色值,其中,颜色函数包括颜色赋值算法;

    在本公开的一种示例实施例中,颜色函数中开包括颜色赋值算法,颜色赋值算法可以包括各种程序设计语言设计的,用于对项目进行颜色赋值的算法。例如,在c#语言中,可以采用intv=color.red.toargb();colorc=color.fromargb(v)进行颜色赋值;又如,在java语言中,可以采用system.out.println()进行颜色赋值。本公开对颜色赋值算法的具体形式并不做特殊限定,只要能够进行颜色赋值即可。

    步骤s520:根据颜色赋值算法对视图赋予第二色值以更新视图的颜色。

    在本公开的一种示例实施例中,通过上述步骤s510~s520,可以在颜色函数获取到第二色值之后,通过颜色赋值算法对界面的视图赋予第二色值,达到更新视图颜色的目的。

    在本公开的一种示例实施例中,第一色值与第二色值可以包括蓝色色值、绿色色值、红色色值,第一色值与第二色值可以包括蓝色色值、绿色色值、红色色值,这些色值都可以用十进制或十六进制进行表示。具体而言,在使用十六进制表示色值时,可以采用六位十六进制数进行表示。例如:ff0000可以表示红色,其中,6位十六进制两两一组分别表示rgb颜色模式中的红绿蓝,形式上看为:rrggbb。需要说明的是,在不同的程序设计语言中十六进制的rgb颜色模式的表示形式并非完全一致,例如在visualbasic6.0中,十六进制的rgb颜色可以表示为&hbbggrr&。与此同时,十进制的rgb颜色模式下的表示形式采用九位十进制数进行表示,例如:白色的十进制rgb颜色表示为(255,255,255),黑色rgb的十进制rgb颜色表示为(0,0,0)。

    在本公开的一种示例实施例中,在获取第一色值与第二色值对应的进制之后,可以将第一色值和第二色值对应的进制进行统一换算。如图6所示,对第一色值和第二色值对应的进制进行统一换算,可以包括以下步骤s610~s630:

    步骤s610:获取第一色值以及第一色值对应的进制;

    在本公开的一种示例实施例中,应用界面的视图数据以及视图数据对应的第一色值可以包括十进制的rgb颜色模式,也可以包括十六进制的rgb颜色模式,在获取到第一色值时,可以检测第一色值对应的rgb颜色模式为十进制或十六进制。

    步骤s620:获取第二色值以及第二色值对应的进制;

    在本公开的一种示例实施例中,通过色值转换函数将第一色值转换为第二色值之后,可以获取第二色值,并且检测第一色值对应的rgb颜色模式为十进制或十六进制。

    步骤s630:将第一色值对应的进制或第二色值的进制进行统一换算。

    在本公开的一种示例实施例中,在获取到第一色值和第二色值对应的rgb颜色模式进制时,可以将第一色值和第二色值的rgb颜色模式进制进行统一换算。具体而言,可以将十六进制rgb颜色模式中对应位的两位(十六进制)转换成十进制,即可得到十进制rgb颜色模式的色值。例如,将十六进制rgb颜色模式的0000ff转换为十进制rgb颜色时,可以将00(十六进制,红色)转换0(十进制,红色),将00(十六进制,绿色)转换0(十进制,绿色),将ff(十六进制,蓝色)转换255(十进制,蓝色),即得到的十进制rgb颜色模式的色值为(0,0,255)。

    在本公开的一种示例实施例中,通过上述步骤s610~s620,可以将第一色值和第二色值对应的进制进行统一换算,方便颜色函数进行更新处理。

    需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

    此外,在本公开的示例性实施方式中,还提供了一种应用界面的视图颜色的更新装置。参照图7所示,一种应用界面的视图颜色的更新装置700包括:色值获取模块710,指令获取模块720、色值转换模块730,颜色更新模块740。

    其中,色值获取模块,用于获取应用界面的视图数据以及视图数据对应的第一色值,其中,应用包括颜色函数;指令获取模块,用于获取颜色转换指令,并根据颜色转换指令在颜色函数前插入色值转换函数;色值转换模块,用于根据色值转换函数对第一色值进行转换得到第二色值。颜色更新模块,用于颜色函数根据第二色值更新视图的颜色。

    在本公开的一种示例性实施例中,基于前述方案,根据颜色转换指令调用提取函数以及提取函数对应的色值转换函数;获取颜色函数的位置,并使用提取函数将色值转换函数插入颜色函数之前。

    在本公开的一种示例性实施例中,基于前述方案,置灰转换指令,其中,置灰转换指令用于将视图的颜色更新为灰色。

    在本公开的一种示例性实施例中,基于前述方案,获取第一色值以及色值转换函数对应的色值转换公式;根据色值转换公式将第一色值转换为第二色值。

    在本公开的一种示例性实施例中,基于前述方案,颜色函数接收第二色值,其中,颜色函数包括颜色赋值算法;根据颜色赋值算法对视图赋予第二色值以更新视图的颜色。

    在本公开的一种示例性实施例中,基于前述方案,第一色值与第二色值为十进制或十六进制。

    在本公开的一种示例性实施例中,基于前述方案,获取第一色值以及第一色值对应的进制;获取第二色值以及第二色值对应的进制;将第一色值对应的进制或第二色值的进制进行统一换算。

    由于本公开的示例实施例的应用界面的视图颜色的更新装置的各个功能模块与上述应用界面的视图颜色的更新方法的示例实施例的步骤对应,因此对于本公开装置实施例中未披露的细节,请参照本公开上述的应用界面的视图颜色的更新方法的实施例。

    应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。

    此外,在本公开的示例性实施例中,还提供了一种能够实现上述应用界面的视图颜色的更新方法的电子设备。

    所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施例、完全的软件实施例(包括固件、微代码等),或硬件和软件方面结合的实施例,这里可以统称为“电路”、“模块”或“系统”。

    下面参照图8来描述根据本公开的这种实施例的电子设备800。图8显示的电子设备800仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

    如图8所示,电子设备800以通用计算设备的形式表现。电子设备800的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830、显示单元840。

    其中,存储单元存储有程序代码,程序代码可以被处理单元810执行,使得处理单元810执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。例如,处理单元810可以执行如图2中所示的步骤s210,获取应用界面的视图数据以及视图数据对应的第一色值,其中,应用包括颜色函数;步骤s220,获取颜色转换指令,并根据颜色转换指令在颜色函数前插入色值转换函数;步骤s230,根据色值转换函数对第一色值进行转换得到第二色值;步骤s240,颜色函数根据第二色值更新视图的颜色。

    又如,电子设备可以实现如图2所示的各个步骤。

    存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)821和/或高速缓存存储单元822,还可以进一步包括只读存储单元(rom)823。

    存储单元820还可以包括具有一组(至少一个)程序模块825的程序/实用工具824,这样的程序模块825包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。

    总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。

    电子设备800也可以与一个或多个外部设备870(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备800交互的设备通信,和/或与使得该电子设备800能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口850进行。并且,电子设备800还可以通过网络适配器860与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与电子设备800的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备800使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。

    通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施例的方法。

    在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施例中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施例的步骤。

    计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。

    可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。

    可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。

    此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。

    本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。

    应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。


    技术特征:

    1.一种应用界面的视图颜色的更新方法,其特征在于,包括:

    获取应用界面的视图数据以及所述视图数据对应的第一色值,其中,所述应用包括颜色函数;

    获取颜色转换指令,并根据所述颜色转换指令在所述颜色函数前插入色值转换函数;

    根据所述色值转换函数对所述第一色值进行转换得到第二色值;

    所述颜色函数根据所述第二色值更新所述视图的颜色。

    2.根据权利要求1所述的方法,其特征在于,所述根据所述颜色转换指令在所述颜色函数前插入色值转换函数,包括:

    根据所述颜色转换指令调用提取函数以及所述提取函数对应的色值转换函数;

    获取所述颜色函数的位置,并使用所述提取函数将所述色值转换函数插入所述颜色函数之前。

    3.根据权利要求1所述的方法,其特征在于,所述颜色转换指令包括:

    置灰转换指令,其中,所述置灰转换指令用于将所述视图的颜色更新为灰色。

    4.根据权利要求1所述的方法,其特征在于,所述根据色值转换函数对所述第一色值进行转换得到第二色值,包括:

    获取所述第一色值以及所述色值转换函数对应的色值转换公式;

    根据所述色值转换公式将所述第一色值转换为第二色值。

    5.根据权利要求1所述的方法,其特征在于,所述颜色函数根据所述第二色值更新所述视图的颜色,包括:

    所述颜色函数接收所述第二色值,其中,所述颜色函数包括颜色赋值算法;

    根据所述颜色赋值算法对所述视图赋予所述第二色值以更新所述视图的颜色。

    6.根据权利要求1所述的方法,其特征在于,所述第一色值与所述第二色值,包括:所述第一色值与所述第二色值为十进制或十六进制。

    7.根据权利要求6述的方法,其特征在于,所述方法还包括:

    获取所述第一色值以及所述第一色值对应的进制;

    获取所述第二色值以及所述第二色值对应的进制;

    将所述第一色值对应的进制或所述第二色值的进制进行统一换算。

    8.一种应用界面的视图颜色的更新装置,其特征在于,包括:

    色值获取模块,用于获取应用界面的视图数据以及视图数据对应的第一色值,其中,所述应用包括颜色函数;

    指令获取模块,用于获取颜色转换指令,并根据所述颜色转换指令在颜色函数前插入色值转换函数;

    色值转换模块,用于根据所述色值转换函数对所述第一色值进行转换得到第二色值;

    颜色更新模块,用于所述颜色函数根据所述第二色值更新所述视图的颜色。

    9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1至7中任一项所述的方法。

    10.一种电子设备,其特征在于,包括:

    处理器;以及

    存储器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至7中任一项所述的方法。

    技术总结
    本公开涉及计算机领域,具体涉及应用界面的视图颜色的更新方法及装置、计算机可读存储介质及电子设备,上述方法包括:获取应用界面的视图数据以及视图数据对应的第一色值,其中,应用包括颜色函数;获取颜色转换指令,并根据颜色转换指令在颜色函数前插入色值转换函数;根据色值转换函数对第一色值进行转换得到第二色值;颜色函数根据第二色值更新视图的颜色;通过本公开实施例的技术方案,能够快速、准确的对视图色值进行更新。

    技术研发人员:侯俊勇
    受保护的技术使用者:北京沃东天骏信息技术有限公司;北京京东世纪贸易有限公司
    技术研发日:2020.11.25
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-23115.html

    最新回复(0)