一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

界面更新方法、装置、计算机设备以及存储介质与流程

2022-02-22 09:58:51 来源:中国专利 TAG:

1.本技术涉及计算机
技术领域
,特别是涉及一种界面更新方法、装置、计算机设备以及存储介质。
背景技术
:2.随着互联网快速发展的时代,用户界面设计(userinterfacedesign)也随之不断更新发展,用户界面设计是指对软件的人机交互、操作逻辑、界面美观的整体设计。而数据绑定是指将一个用户界面元素(控件)的属性绑定到一个类型(对象)实例上的某个属性的方法。3.目前的界面设计中,一般在用户界面蓝图中提供了控件绑定的方法,但这种方法主要得在用户界面蓝图中进行逻辑开发,跟用户界面蓝图绑定太紧密,因此在界面上控件修改时需要相应的修改用户界面蓝图,而用户界面蓝图是二进制的,修改较为复杂,不方便进行界面维护。技术实现要素:4.基于此,有必要针对上述技术问题,提供一种能有效提高用户界面维护效率的界面更新方法、装置、计算机设备和存储介质。5.一种界面更新方法,所述方法包括:6.获取界面数据更新请求;7.基于所述界面数据更新请求,确定视图模型层中的修改字段以及所述修改字段对应的字段属性,所述字段属性包括已数据绑定与未数据绑定;8.当所述字段属性为已数据绑定时,记录所述修改字段对应的修改值;9.在视图模型层通过数据绑定触发所述修改字段对应的属性变化逻辑,以在视图层根据所述修改值对所述修改字段对应的界面控件进行修改。10.一种界面更新装置,所述装置包括:11.请求获取模块,用于获取界面数据更新请求;12.属性确定模块,用于基于所述界面数据更新请求,确定视图模型层中的修改字段以及所述修改字段对应的字段属性,所述字段属性包括已数据绑定与未数据绑定;13.修改值记录模块,用于当所述字段属性为已数据绑定时,记录所述修改字段对应的修改值;14.界面更新模块,用于在视图模型层通过数据绑定触发所述修改字段对应的属性变化逻辑,以在视图层根据所述修改值对所述修改字段对应的界面控件进行修改。15.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:16.获取界面数据更新请求;17.基于所述界面数据更新请求,确定视图模型层中的修改字段以及所述修改字段对应的字段属性,所述字段属性包括已数据绑定与未数据绑定;18.当所述字段属性为已数据绑定时,记录所述修改字段对应的修改值;19.在视图模型层通过数据绑定触发所述修改字段对应的属性变化逻辑,以在视图层根据所述修改值对所述修改字段对应的界面控件进行修改。20.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:21.获取界面数据更新请求;22.基于所述界面数据更新请求,确定视图模型层中的修改字段以及所述修改字段对应的字段属性,所述字段属性包括已数据绑定与未数据绑定;23.当所述字段属性为已数据绑定时,记录所述修改字段对应的修改值;24.在视图模型层通过数据绑定触发所述修改字段对应的属性变化逻辑,以在视图层根据所述修改值对所述修改字段对应的界面控件进行修改。25.一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现以下步骤:26.获取界面数据更新请求;27.基于所述界面数据更新请求,确定视图模型层中的修改字段以及所述修改字段对应的字段属性,所述字段属性包括已数据绑定与未数据绑定;28.当所述字段属性为已数据绑定时,记录所述修改字段对应的修改值;29.在视图模型层通过数据绑定触发所述修改字段对应的属性变化逻辑,以在视图层根据所述修改值对所述修改字段对应的界面控件进行修改。30.上述界面更新方法、装置、计算机设备和存储介质,通过获取界面数据更新请求;基于界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性;当字段属性为已数据绑定时,记录修改字段对应的修改值;在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改。本技术中,进行视图层和视图模型层的数据绑定,当需要进行界面更新时,即可基于界面数据更新请求的修改字段对应的字段属性,通过操控视图模型层中的数据触发所述修改字段对应的属性变化逻辑,从而对界面控件进行修改来直接刷新视图层,从而有效提高界面维护效率。附图说明31.图1为一个实施例中界面更新方法的应用环境图;32.图2为一个实施例中界面更新方法的流程示意图;33.图3为一个实施例中mvvm模式的流程示意图;34.图4为一个实施例中对待修改界面空间的内容进行修改步骤的流程示意图;35.图5为一个实施例中控制数据绑定关系加载或解除步骤的流程示意图;36.图6为一个实施例中进行数据绑定步骤的流程示意图;37.图7为一个实施例中界面更新装置的结构框图;38.图8为一个实施例中计算机设备的内部结构图。具体实施方式39.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。40.本技术涉及云计算的内容,主要通过云计算技术进行界面开发的辅助,云计算(cloudcomputing)是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为iaas(infrastructureasaservice,基础设施即服务)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。按照逻辑功能划分,在iaas(infrastructureasaservice,基础设施即服务)层上可以部署paas(platformasaservice,平台即服务)层,paas层之上再部署saas(softwareasaservice,软件即服务)层,也可以直接将saas部署在iaas上。paas为软件运行的平台,如数据库、web容器等。saas为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,saas和paas相对于iaas是上层。41.本技术提供的界面更新方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。服务器104具体用于进行界面开发,采用mvvm(model、view、viewmodel,模型、界面、界面模型)模式,即包括有数据模型层model,视图层view以及视图模型层viewmodel,view对应于一个界面,比如在ue(ultraedit,文本编辑器)下可以理解为ui界面的蓝图对应的lua脚本,主要描述如何对ui界面中控件进行绑定,和对ui控件的访问,viewmodel则是与view对应的数据模型,其也可以理解为是一个lua脚本,也会包含有如何对view进行绑定描述的内容。终端102可以向服务器104的数据模型层发送界面更新请求,以通过服务器104的数据模型层启动界面数据更新请求,从而进行界面开发过程中的界面更新,服务器104则获取界面数据更新请求;基于界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性,字段属性包括已数据绑定与未数据绑定;当字段属性为已数据绑定时,记录修改字段对应的修改值;在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改。其中,服务器104可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统。终端102可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能语音交互设备、智能家电、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。42.在一个实施例中,如图2所示,提供了一种界面更新方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:43.步骤201,获取数据模型层的界面数据更新请求。44.步骤203,确定视图模型层中界面数据更新请求的修改字段对应的字段属性,字段属性包括已数据绑定与未数据绑定。45.其中,本技术的方案具体应用于mvvm模式的界面开发中,传统ui开发常用mvc模式,既数据模型(model)、控制器(controller)、视图(view)三层分离的架构设计。大部分的实践中,控制器层被设计为作为连接数据模型层和视图层的中介,负责将数据模型层的数据更新到界面上。而控制器层往往会和视图层太紧密,分离不够彻底,而且总是写一大堆重复代码将数据更新到视图层,所以本技术使用了mvvm的模式来进行界面开发。mvvm的模式,参照,分为数据模型、视图、视图模型三部分,mvvm的流程图具体可以参照图3。其中,每个视图类绑定一个umg蓝图,视图可以绑定任意多个视图模型;视图模型数据变化会使用该方案的自制,自动通知视图进行刷新;视图派生于viewbase基类,视图模型派生于viewmodelbase基类,并由各自的管理器统一控制;不同视图和视图模型分别由视图模型管理器(viewmodelmanager)与视图管理器(viewmanager)提供接口进行访问,不同视图可以方便访问任意视图模型中的数据,且不用关心其具体变化逻辑。模型层可以对视图模型中的值进行操作,实现显示与逻辑分离。所有的界面显示逻辑都布署在视图中,所有的界面业务逻辑都布署写在视图模型中。界面数据更新请求具体是指在界面开发过程中,对视图层内控件的内容进行修改的请求。界面数据更新请求具体可以包含请求的视图控件,该视图控件在视图模型层中对应的字段以及具体的修改值等内容。界面数据更新请求具体由mvvm中的模型层发出,模型层可以通过界面数据更新请求来对视图模型层的字段进行修改,而这个修改的字段即为修改字段。而字段属性具体包括字段已数据绑定和字段未数据绑定。46.具体地,当在mvvm的界面开发模式下需要进行界面更新时,可以通过本技术的界面更新方法来进行界面更新,即界面上视图控件相关内容的更新。首先,可以在模型层界面数据更新请求来获取界面更新的指示,即通过模型层来对视图模型层中的值进行操作,实现显示与逻辑分离。而服务器104在接收到界面数据更新请求后,即可基于界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性,从而进一步地确定界面更新的具体方式。在其中一个实施例中,本技术的界面更新方法具体用于利用游戏引擎来进行游戏开发过程中的游戏界面进行更新。基于lua脚本实现,此时,视图层可以理解为界面蓝图对应的lua脚本,主要描述如何对界面中控件进行绑定,和对界面中的界面控件的访问。而视图模型层也可以视为一个lua脚本,用于描述如何对视图层中的界面控件进行绑定。而界面控件具体可以包括canvas、wrapbox、scrollbox、verticalbox、horizonbox、recyclelist、listview等可以添加多个子界面的控件。47.步骤205,当字段属性为已数据绑定时,记录修改字段对应的修改值。48.其中,数据绑定具体是指将一个用户界面元素(控件)的属性绑定到一个类型(对象)实例上的某个属性的方法。在本技术的方案中,可以将视图模型层内的字段与视图层中的控件进行绑定,当字段以数据绑定时,可以通过修改视图模型层内的字段来对视图层中的控件直接进行更新,从而提高界面更新效率。修改值则是界面更新中对控件以及修改字段进行修改的目标值。同时,通过本技术的界面更新方法来进行界面的更新对于开发人员而言也更容易理解和操作,从而提高开发效率,开发人员不用每次刷新ui的时候都写一堆重复代码;同时也可以减少ui显示和数据不一致的问题;另外开发时只需要修改lua脚本,跟ui蓝图不会有冲突,也容易维护。本技术的界面更新方法基于mvvm的模式,所以业务逻辑和具体view更脱离,更容易重用。49.具体地,在进行界面更新时,可以先确定字段的字段属性是否已经数据绑定,当字段的字段属性为已数据绑定时,则可以确定视图层中,存在与当前修改字段所绑定的界面控件,因此需要记录修改字段对应的修改值,而后根据修改值来在视图层对修改字段对应的界面控件进行修改。50.步骤207,在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改。51.其中,视图层即view层,用于进行界面显示,包括有若干的界面控件。而数据绑定具体是指将视图模型层的字段与视图层界面控件的属性相绑定。视图属性变化逻辑具体是指在视图模型层内的字段修改后,同步触发界面控件进行修改变化的处理逻辑,可以通过修改字段对应的属性变化逻辑,而后根据数据绑定关系,在视图层根据修改值对修改字段对应的界面控件的属性进行修改。52.具体地,在确定字段属性为已数据绑定时,且记录修改字段对应的修改值后,可以直接在视图模型层,通过数据绑定触发修改字段对应的属性变化逻辑,从而在视图模型层修改的基础上直接在视图层根据修改值对修改字段对应的界面控件进行修改,通过进行视图层和视图模型层的数据绑定关联,然后通过操控视图模型层中的数据就可以直接刷新界面控件的内容,完成界面更新。53.上述界面更新方法,通过获取界面数据更新请求;基于界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性;当字段属性为已数据绑定时,记录修改字段对应的修改值;在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改。本技术中,进行视图层和视图模型层的数据绑定,当需要进行界面更新时,即可基于界面数据更新请求的修改字段对应的字段属性,通过操控视图模型层中的数据触发修改字段对应的属性变化逻辑,从而对界面控件进行修改来直接刷新视图层,从而有效提高界面维护效率。同时,通过本技术的界面更新方法来进行界面的更新对于开发人员而言也更容易理解和操作,从而提高开发效率,开发人员不用每次刷新ui的时候都写一堆重复代码;同时也可以减少ui显示和数据不一致的问题;另外开发时只需要修改lua脚本,跟ui蓝图不会有冲突,也容易维护。本技术的界面更新方法基于mvvm的模式,所以业务逻辑和具体view更脱离,更容易重用。54.在一个实施例中,步骤203之前,还包括:构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。55.具体地,在进行界面更新之前,还需要预先构建视图模型层内字段与视图层内界面控件之间的数据绑定关系,此后才可以基于数据绑定关系来进行界面内容的更新,在模型层进行界面数据更新后,可以基于视图模型层内字段的修改,来控制视图层内界面控件的修改。从而实现界面控件内容的快速更新,并保证界面更新的效率。本实施例中,通过预先构建视图模型层内字段与视图层内界面控件之间的数据绑定关系,可以预先进行界面更新的事前准备,从而在后续界面更新过程中,有效地实现界面更新,保证界面更新的效率。56.在其中一个实施例中,构建视图模型层内字段与视图层内界面控件之间的数据绑定关系包括:在视图模型层记录视图层内界面控件对应的控件更新方法,以在视图模型层构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。57.其中,控件更新方法具体是指用于根据界面模型层内字段的具体属性来对视图层内控件进行更新所使用的函数方法。58.具体地,为了构建视图模型层内字段与视图层内界面控件之间的数据绑定关系,可以在视图模型层内记录视图层内界面控件对应的控件更新方法,从而在视图模型层构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。数据绑定关系的关联都是通过viewbase/viewmodelbase这2个基类完成的,主要是在视图模型层中记录各个视图view的控件更新方法,形成[view,databindtable]这样的map结构,所以可以支持视图模型层内的一个视图模型绑定视图层的多个视图。在一个具体的实施例中,视图模型层内字段与视图层内界面控件之间的数据绑定关系为databindtable。则在databindtable中,一个控件更新方法为databinding.directtext(),其表示直接将视图模型层内字段的具体属性作为字符串设置到视图层text控件的内容上。另一个控件为databinding.numtotext(),其表示将视图模型层内字段的具体属性作为数字,转为字符串后设置到视图层text控件的内容上。另一个控件为databinding.directimagepath(),其表示将视图模型层内字段的具体属性作为字符串设置到视图层image控件的资源路径上。另一个控件为databinding.subviewbinding(),其表示将视图模型层内字段的具体属性作为静态subviewmodel的实例,绑定到视图层subview上。本实施例中,通过在视图模型层记录视图层内界面控件对应的控件更新方法,可以有效进行视图模型层内字段与视图层内界面控件之间的数据绑定,从而保障后续的界面更新过程的顺利进行。[0059]在其中一个实施例中,如图4所示,步骤207包括:[0060]步骤401,通过数据绑定关系,在视图模型层查找修改字段对应的控件更新方法。[0061]步骤403,基于的控件更新方法,在视图层调用修改字段所对应的待修改界面控件,并根据修改值对待修改界面控件的内容进行修改。[0062]其中修改字段对应的控件更新方法即与修改字段所绑定控件的控件更新方法。[0063]具体地,在对待修改界面控件的内容进行修改时,具体可以先通过数据绑定关系,来查找到修改字段对应的控件更新方法。由于在进行数据绑定后,视图模型层中已经记录好了视图模型层所对应视图的控件更新方法databindtable,并形成[view,databindtable]这样的map结构。因此,可以通过数据绑定关系,轻松查找修改字段对应的控件更新方法。而后基于的控件更新方法,在视图层调用修改字段所对应的待修改界面控件,并根据修改值对待修改界面控件的内容进行修改。在其中一个实施例中,视图模型层与视图层均可以视为lua脚本文件。而本技术的方案具体用于在游戏开发过程中,完成对游戏界面的更新,当界面更新开始时,数据模型层的游戏模块可以对视图模型层中的值进行设置,从而完成页面的更新,比如更新需要更新视图模型层中samplemainviewmodel中的字段name的值;因为name不是samplemainviewmodel的,所以会触发lua元表的__newindex,接着就到_meta_set,然后如果发现这个字段name是数据绑定的定义中的字段,则记录这个字段新的修改值value,同时会触发属性变化的逻辑,在属性变化的逻辑中,服务器104会先找出视图层的控件更新方法databindtable中字段name对应的控件更新策略,根据控件更新策所定义的函数,会调用对应控件的方法,将修改值设置到控件上,从而完成界面的更新。本实施例中,在进行界面更新时,基于通过数据绑定关系,查找修改字段对应的控件更新方法,从而有效进行界面更新,保证界面更新处理的效率[0064]在其中一个实施例中,如图5所示,步骤205之前,还包括:[0065]步骤502,获取界面数据更新请求对应界面的界面属性。[0066]步骤504,当界面的界面属性为界面显示时,加载视图模型层内字段与视图层界面控件之间的数据绑定关系。[0067]步骤506,当界面的界面属性为界面隐藏时,解除视图模型层内字段与视图层界面控件之间的数据绑定关系。[0068]具体地,为了能让界面的数据绑定关系在需要时生效,可以先界面数据更新请求对应界面的界面属性,从而基于界面属性来确定如何设置数据绑定关系。在界面的界面属性为页面显示,即界面处于onshow的时候,需要将界面层和界面模型层关联起来,加载视图模型层内字段与视图层界面控件之间的数据绑定关系。而在当界面的界面属性为页面隐藏时,即界面处于onhide的时候,则需要解除这样的关联,解除视图模型层内字段与视图层界面控件之间的数据绑定关系。本实施例中,通过读取界面数据更新请求对应界面的界面属性,可以基于界面属性来保证绑定关系是否生效,从而保证数据绑定关系的有效性。[0069]在其中一个实施例中,如图6所示,在视图模型层记录视图层内界面控件对应的控件更新方法,以在视图模型层构建视图模型层内字段与视图层内界面控件之间的数据绑定关系的步骤具体包括:[0070]步骤601,获取视图模型层上的字段以及字段对应的控件更新方法。[0071]步骤603,基于字段确定当前界面上与字段关联的界面控件。[0072]步骤605,基于字段、界面控件以及控件更新方法,将视图模型层内字段绑定至当前界面。[0073]具体地,在数据绑定的过程中,即建立databindtable时,对于视图模型层而言,需要确定三个内容,即视图模型层中的字段、视图层中与字段关联的界面控件,还有字段对应的控件更新方法,控件更新方法也可以视为字段绑定至界面控件上的绑定方法。在构建视图模型层内字段与视图层内界面控件之间的数据绑定关系时,需要先确定出本次数据绑定所绑定的字段,确定界面控件,同时将字段与界面控件之间关联的控件更新方法也记录至视图模型层中。在其中一个实施例中,databindtable中的控件更新方法为databinding.directtext(),其表示直接将视图模型层内字段的具体属性作为字符串设置到视图层text控件的内容上。此时其对应的字段为“name”,与该字段关联的控件为“textname”。另一个控件为databinding.numtotext(),其表示将视图模型层内字段的具体属性作为数字,转为字符串后设置到视图层text控件的内容上。此时其对应的字段为“level”,与该字段关联的控件为“textlevel”。另一个控件为databinding.directimagepath(),其表示将视图模型层内字段的具体属性作为字符串设置到视图层image控件的资源路径上。此时其对应的字段为“icon”,与该字段关联的控件为“headicon”。另一个控件为databinding.subviewbinding(),其表示将视图模型层内字段的具体属性作为静态subviewmodel的实例,绑定到视图层subview上。此时其对应的字段包括“season1”以及“season2”,与该字段关联的控件为“samplesub1script”以及“samplesub2script”。本实施例中,通过基于字段、界面控件以及控件更新方法,将视图模型层内字段绑定至当前界面,可以有效实现视图模型层内字段与视图层内控件的数据绑定,从而保证后续过程的界面更新处理效率。[0074]在其中一个实施例中,步骤601包括:获取视图模型层的属性绑定集合,基于属性绑定集合获取视图模型层上的字段。[0075]其中,属性绑定集合是指预先建立的,用于容纳可与视图层内控件绑定的变量。[0076]具体地,可以预先设置属性绑定集合,而后基于属性绑定集合内给出的变量。来确定可以与视图层中的界面控件相绑定的字段。如一个具体的实施例中,属性绑定集合内包括有“name”、“level”以及“icon”三个变量,其中“name”、“level”分别用来展示把字符串和数字绑定至视图层的text控件。而“icon”则用来展示将字符串作为图集路径绑定到image上。本实施例中,通过预先建立并获取属性绑定集合,从而可以有效确定数据绑定中涉及到的字段,提高数据绑定过程中的处理效率。[0077]在其中一个实施例中,本技术的界面更新装置具体用于实现对于游戏开发过程中游戏界面的更新,游戏开发采用mvvm模式,可以通过任意的游戏引擎来实现,其中游戏界面的视图层与视图模型层都基于lua脚本实现。同时在开发过程中,还进行了数据绑定处理,将视图模型层中的字段与视图层中的控件进行绑定。而在当游戏开发人员需要进行游戏界面内控件内容的修改时,可以在数据模型层中界面数据更新请求开启界面更新,而后在视图模型层中,会先确定出界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性。而后确定字段是否已经与视图中的控件进行了数据绑定,在字段属性为已数据绑定时,则会直接记录修改字段对应的修改值,而后在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改,此过程需要先通过数据绑定关系,在视图模型层查找修改字段对应的控件更新方法;而后基于的控件更新方法,在视图层调用修改字段所对应的待修改界面控件,并根据修改值对待修改界面控件的内容进行修改。而本技术的方案中,其数据绑定的过程具体包括:获取视图模型层的属性绑定集合,基于属性绑定集合获取视图模型层上的字段;基于字段确定当前界面上与字段关联的界面控件;基于字段、界面控件以及控件更新方法,将视图模型层内字段绑定至当前界面。同时还需要在视图模型层记录视图层内界面控件对应的控件更新方法,以在视图模型层构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。此外,本技术的方案中还包括了绑定关系是否生效的相关设定,在进行界面更新前,需要先获取界面数据更新请求对应界面的界面属性;而后在当界面的界面属性为界面显示时,加载视图模型层内字段与视图层界面控件之间的数据绑定关系;而当界面的界面属性为界面隐藏时,解除视图模型层内字段与视图层界面控件之间的数据绑定关系,从而保证数据绑定关系的有效性。[0078]应该理解的是,虽然图2-6的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-6中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。[0079]在一个实施例中,如图7所示,提供了一种界面更新装置,该装置可以采用软件模块或硬件模块,或者是二者的结合成为计算机设备的一部分,该装置具体包括:请求获取模块702、属性确定模块704、修改值记录模块706和界面更新模块708,其中:[0080]请求获取模块702用于获取界面数据更新请求。[0081]属性确定模块704,用于基于界面数据更新请求,确定视图模型层中的修改字段以及修改字段对应的字段属性,字段属性包括已数据绑定与未数据绑定。[0082]修改值记录模块706,用于当字段属性为已数据绑定时,记录修改字段对应的修改值。[0083]界面更新模块708,用于在视图模型层通过数据绑定触发修改字段对应的属性变化逻辑,以在视图层根据修改值对修改字段对应的界面控件进行修改。[0084]在其中一个实施例中,还包括数据绑定模块,用于:构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。[0085]在其中一个实施例中,数据绑定模块具体用于:在视图模型层记录视图层内界面控件对应的控件更新方法,以在视图模型层构建视图模型层内字段与视图层内界面控件之间的数据绑定关系。[0086]在其中一个实施例中,界面更新模块708具体用于:通过数据绑定关系,在视图模型层查找修改字段对应的控件更新方法;基于的控件更新方法,在视图层调用修改字段所对应的待修改界面控件,并根据修改值对待修改界面控件的内容进行修改。[0087]在其中一个实施例中,还包括绑定开关模块,用于:获取界面数据更新请求对应界面的界面属性;当界面的界面属性为界面显示时,加载视图模型层内字段与视图层界面控件之间的数据绑定关系;当界面的界面属性为界面隐藏时,解除视图模型层内字段与视图层界面控件之间的数据绑定关系。[0088]在其中一个实施例中,数据绑定模块还用于:获取视图模型层上的字段以及字段对应的控件更新方法;基于字段确定当前界面上与字段关联的界面控件;基于字段、界面控件以及控件更新方法,将视图模型层内字段绑定至当前界面。[0089]在其中一个实施例中,数据绑定模块具体用于:获取视图模型层的属性绑定集合,基于属性绑定集合获取视图模型层上的字段。[0090]关于界面更新装置的具体限定可以参见上文中对于界面更新方法的限定,在此不再赘述。上述界面更新装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。[0091]在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器801、存储器和网络接口802。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质803、内存储器804。该非易失性存储介质存储有操作系统805、计算机程序806和数据库807。该内存储器804为非易失性存储介质803中的操作系统805和计算机程序806的运行提供环境。[0092]该计算机设备的数据库807用于存储界面更新相关的模型数据。该计算机设备的网络接口802用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种界面更新方法。[0093]本领域技术人员可以理解,图8中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。[0094]在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。[0095]在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。[0096]在一个实施例中,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各方法实施例中的步骤。[0097]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。[0098]以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。[0099]以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献