CN116795358A - 界面数据处理方法、装置、电子设备及介质 - Google Patents
界面数据处理方法、装置、电子设备及介质 Download PDFInfo
- Publication number
- CN116795358A CN116795358A CN202210266690.XA CN202210266690A CN116795358A CN 116795358 A CN116795358 A CN 116795358A CN 202210266690 A CN202210266690 A CN 202210266690A CN 116795358 A CN116795358 A CN 116795358A
- Authority
- CN
- China
- Prior art keywords
- control
- script
- target
- interface
- logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title abstract description 22
- 238000013515 script Methods 0.000 claims abstract description 499
- 238000012545 processing Methods 0.000 claims abstract description 82
- 238000000034 method Methods 0.000 claims abstract description 42
- 230000006870 function Effects 0.000 claims description 102
- 238000004590 computer program Methods 0.000 claims description 13
- 239000013643 reference control Substances 0.000 claims description 8
- 238000013461 design Methods 0.000 abstract description 22
- 238000010586 diagram Methods 0.000 description 16
- 238000011161 development Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000010276 construction Methods 0.000 description 3
- 238000013499 data model Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请实施例公开了一种界面数据处理方法、装置、电子设备及介质,应用于计算机技术领域。其中方法包括:获取界面信息,并获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理得到控件声明脚本,获取每个待关联控件的显示数据脚本和逻辑控制架构,分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理得到逻辑控制脚本,获取控件配置信息,根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。采用本申请实施例,可以提高界面设计效率及可靠性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种界面数据处理方法、装置、电子设备及介质。
背景技术
在应用开发过程中经常会涉及应用的界面设计。目前的界面设计过程通常是由技术人员手动配置控件对应的显示逻辑,将经显示逻辑判断后的显示结果赋予控件以完成控件的关联和显示,以生成控件关联的界面。然而,该方式下,各个步骤间耦合度较高,技术人员工作量大易出错,导致界面设计效率及可靠性低。因此,如何提高界面设计效率及可靠性成为一个亟待解决的问题。
发明内容
本申请实施例提供了一种界面数据处理方法、装置、电子设备及介质,可以提高对控件的配置效率,提高界面设计效率和可靠性。
一方面,本申请实施例提供了一种界面数据处理方法,该方法包括:
获取界面信息;该界面信息包括至少一个待关联控件;
获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
获取每个待关联控件的显示数据脚本和逻辑控制架构;
分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面;该目标界面用于显示每个待关联控件。
一方面,本申请实施例提供了一种界面数据处理装置,该装置包括:
获取单元,用于获取界面信息;该界面信息包括至少一个待关联控件;
获取单元,还用于获取至少一个待关联控件中每个待关联控件的控件声明;
处理单元,用于分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
获取单元,还用于获取每个待关联控件的显示数据脚本和逻辑控制架构;
处理单元,还用于分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
确定单元,用于获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面;该目标界面用于显示每个待关联控件。
一方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,其中,存储器用于存储计算机程序,该计算机程序包括程序指令,处理器被配置用于调用该程序指令,执行上述方法中的部分或全部步骤。
一方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时,用于执行上述方法中的部分或全部步骤。
相应地,根据本申请的一个方面,提供了一种计算机程序产品或者计算机程序,该计算机程序产品或计算机程序包括程序指令,该程序指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该程序指令,处理器执行该程序指令,使得该计算机设备执行上述提供的界面数据处理方法。
本申请实施例中,可以获取界面信息包括的每个待关联控件的控件声明,对每个待关联控件和对应的控件声明进行关联处理得到控件声明脚本,获取每个待关联控件的显示数据脚本和逻辑控制架构,对待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理得到逻辑控制脚本,获取控件配置信息,根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。通过上述方法,可以自动生成与待关联控件相关的控件脚本,并完成待关联控件和控件脚本的关联操作,提高控件配置效率和控件与脚本间的关联效率和可靠性,进而可以提高界面设计效率和可靠性。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种界面数据处理方法的流程示意图;
图2为本申请实施例提供的一种显示控件的场景示意图;
图3为本申请实施例提供的一种逻辑控制架构的示意图;
图4为本申请实施例提供的一种确定目标界面的场景示意图;
图5为本申请实施例提供的一种界面数据处理方法的流程示意图;
图6为本申请实施例提供的一种关联配置界面的示意图;
图7为本申请实施例提供的一种生成控件声明脚本的场景示意图;
图8为本申请实施例提供的一种构建第二关联关系的场景示意图;
图9为本申请实施例提供的一种逻辑控制脚本的示意图;
图10为本申请实施例提供的一种界面数据处理方法的交互示意图;
图11为本申请实施例提供的一种界面数据处理方法的流程框架示意图;
图12为本申请实施例提供的一种界面数据处理装置的结构示意图;
图13为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提出的界面数据处理方法可由实现于电子设备,该电子设备可以是服务器,也可以是终端。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表智能、语音交互设备、智能家电、车载终端、飞行器等,但并不局限于此。
下面先对本申请实施例涉及的技术术语和概念进行简单说明,其中:
(1)界面开发架构。
在应用开发过程中,技术人员通过使用界面开发架构进行界面设计,该界面开发架构可以是MVC(Model-View-Controller,模型-视图-控制器)架构、MVP(Model-View-Presenter,模型-视图-发布器)架构等等。可以通过界面开发架构所需控件脚本对待关联控件进行关联,以实现待关联控件的显示。其中,不同的界面开发架构所对应的控件脚本可以不同。其中,控件脚本可以指针对界面开发架构所生成的具备相应功能的代码文件,以及该所关联的控件脚本用于实现在对应的应用界面上进行所含控件的显示。
(2)预制件(prefab)。
预制件可以理解为是包含控件资源的文件,如unity引擎(一种游戏开发引擎)中包含控件资源等的数据文件,该预制件中可以包括多个控件,以及包括该多个控件的控件标识、控件类型等(即控件资源)。
基于上述术语和概念,本申请实施例提出的界面数据处理方法,该方法能够在所使用的界面开发架构下,自动化地生成与待关联控件相关的控件脚本,并完成待关联控件和控件脚本的关联操作。该界面数据处理方法在对界面控件进行关联操作的过程中,可以获取界面信息包括的每个待关联控件的控件声明、显示数据脚本和逻辑控制架构,并根据前述信息得到已关联的控件声明脚本、显示数据脚本和逻辑控制脚本,以实现控件的关联操作。其具体可以是,对每个待关联控件和对应的控件声明进行关联处理得到控件声明脚本,实现待关联控件与控件声明脚本的关联操作,以及获取每个待关联控件的显示数据脚本和逻辑控制架构,对待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理得到逻辑控制脚本,实现待关联控件与逻辑控制脚本的关联操作,以及通过逻辑控制脚本实现待关联控件与显示数据脚本的关联操作,后续可以根据至少一个待关联控件的控件配置信息和前述关联的多个脚本对待关联控件进行显示得到目标界面。由此可以提高控件关联效率和界面设计效率。
示例性地,上述所提及的MVC架构对应的控件脚本可以是Model脚本、View脚本和Controller脚本,本申请实施例所涉及的显示数据脚本可以是前述Model脚本,控件声明脚本可以是前述View脚本,逻辑控制脚本可以是前述Controller脚本;以及MVC架构对应的控件脚本可以是Model脚本、View脚本和Presenter脚本,本申请实施例所涉及的显示数据脚本可以是前述Model脚本,控件声明脚本可以是前述View脚本,逻辑控制脚本可以是前述Presenter脚本。该显示数据脚本可以包括用于存储待关联控件的显示格式的数据模型以及可以读取待关联控件具体的显示数据;该控件声明脚本可以包括待关联控件的控件声明以及可以对待关联控件进行显示;该逻辑控制脚本可以用于关联显示数据脚本和控件声明脚本以及可以包括待关联控件相关的逻辑处理信息,如待关联控件的触发信息以及被触发后要执行的显示逻辑信息等。
示例性地,上述所提及的预制件可以为本申请实施例所涉及的界面信息,界面信息可以基于一个应用界面中要显示的控件得到。例如,当应用界面有一个控件A时,对应的界面信息会存在该控件A,存在该控件A可以表示为存在该控件A对应的控件字段A,以及控件字段A对应的字段值A可以为一串字符串,即界面信息中表示控件A的字符串则对应于应用界面中的控件A;此外,界面信息还可以包括控件A的控件类型和控件标识(控件名称)。该界面信息中可以包括至少一个或多个不同控件类型的控件,可由技术人员根据实际应用场景配置。
可选的,在一些实施例中,电子设备可根据实际的业务需求,执行该界面数据处理方法以提高控件配置和关联效率。例如本申请技术方案可以应用于任意应用程序的界面设计场景中。可选的,本申请涉及的数据如界面信息、相关控件脚本等,可以存储于数据库中,或者可以存储于区块链中,如通过区块链分布式系统存储,本申请不做限定。
可以理解,上述场景仅是作为示例,并不构成对于本申请实施例提供的技术方案的应用场景的限定,本申请的技术方案还可应用于其他场景。例如,本领域普通技术人员可知,随着系统架构的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
基于上述的描述,本申请实施例提出了一种界面数据处理方法,该方法可以由上述提及的电子设备来执行。请参见图1,图1为本申请实施例提供的一种界面数据处理方法的流程示意图。如图1所示,本申请实施例的界面数据处理方法的流程可以包括如下:
S101、获取界面信息。
其中,该界面信息包括至少一个待关联控件,以及可以包括每个待关联控件的控件标识和控件类型。每个待关联控件的控件标识不同,以及每个待关联控件的控件类型可以相同也可以不同。
在一些实施例中,可以在进行应用程序的界面设计时,配置应用界面文件,该应用界面文件指示了界面信息中包含的待关联控件于应用界面中的显示区域,即显示位置,后续可以在该应用界面上对待关联控件进行显示。此外,上述应用程序可包括但不限于:①安装并运行于终端中的应用程序。②免安装的应用程序,即无需下载安装即可使用的应用程序,如小程序,它通常作为子程序运行于客户端。③通过浏览器打开的网页应用程序;等等。
例如,如图2所示,图2为本申请实施例提供的一种显示控件的场景示意图;其中,初始应用界面包括背景图片以及所配置的控件A和控件B,该对应的界面信息包括控件A的信息(比如包括标识A和类型A)和控件B的信息(比如包括标识B和类型B),以及对应的应用界面文件中指示了控件A和控件B的显示区域;当确定了控件A的显示数据A和控件B的显示数据B之后,在初始应用界面上控件A对应的显示区域显示该显示数据A以及在控件B对应的显示区域显示数据B,得到目标界面。可选地,可以是界面信息中包括该所配置的应用界面文件,也可以是界面信息和应用界面文件为界面设计中独立的两个文件。
S102、获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本。
在一些实施例中,电子设备可以从界面信息中获取每个待关联控件的控件标识和控件类型,并根据该控件标识和控件类型生成每个待关联控件的控件声明。一个控件声明表示定义了一个控件,即具体定义了该控件的控件类型和控件标识。例如,控件声明的形式可以是“public UIButton ShareBtn”,表示定义了一个控件类型为UIButton(表示界面上的按钮类型)的控件,该控件的标识为ShareBtn。
在一个可能的实施方式中,电子设备分别对每个待关联控件和对应的控件声明进行关联处理得到控件声明脚本,具体可以是分别对每个待关联控件和该待关联控件对应的控件声明构建第一关联关系,根据第一关联关系和每个待关联控件的控件声明生成控件声明脚本。
在一些实施例中,电子设备对待关联控件和该待关联控件对应的控件声明构建第一关联关系可以是生成界面信息中表示待关联控件的字符串与对应的控件声明之间的第一关联关系,以实现界面信息中的待关联控件与对应控件声明的关联绑定;该第一关联关系指示了具体的控件声明对应至少一个待关联控件中的哪个控件。
在一些实施例中,根据第一关联关系和每个待关联控件的控件声明生成控件声明脚本可以是生成存储有第一关联关系且包含每个待关联控件的控件声明的代码文件,以作为控件声明脚本;该控件声明脚本可以理解为是将界面信息中的待关联控件(的字符串)赋予给控件声明脚本中所包含的对应控件声明。可选地,此处可以为所有待关联控件对应一个控件声明脚本,也可以是一个待关联控件对应一个控件声明脚本,该控件声明脚本包括对应的控件声明以及存储了该对应的控件声明与待关联控件的第一关联关系。此处对控件声明脚本的具体数量不做限制。
S103、获取每个待关联控件的显示数据脚本和逻辑控制架构。
在一个可能的实施方式中,电子设备获取每个待关联控件的显示数据脚本和逻辑控制架构的过程和原理相同,此处以至少一个待关联控件中的任一待关联控件为目标待关联控件为例进行说明。电子设备获取每个待关联控件的显示数据脚本和逻辑控制架构具体可以是,获取目标待关联控件的目标控件类型,并获取与目标控件类型匹配的显示格式以及逻辑控制函数,根据显示格式生成目标待关联控件的显示数据脚本,并根据逻辑控制函数生成目标待关联控件的逻辑控制架构。
在一些实施例中,电子设备可以从目标待关联控件的控件声明确定目标控件类型,也可以从界面信息中确定目标控件类型。显示格式表示待关联控件在应用界面所显示的显示数据的格式,该显示格式与控件类型有关。例如,该目标控件类型是可以显示图像数据的控件类型,则对应的显示格式为图像格式;又如,目标控件类型是可以显示文字数据的控件类型,则对应的显示格式为文字格式。不同控件类型匹配的显示格式可以不同,可以由技术人员根据实际应用场景设置。
因此在一些实施例中,电子设备根据显示格式生成目标待关联控件的显示数据脚本可以是,生成目标待关联控件对应的目标数据模型和生成数据读取函数,该目标数据模型封装有显示格式,此时的显示数据脚本包括该目标数据模型和数据读取函数,但不包括控件的具体显示数据,该具体显示数据可以位于数据库等第三方数据源中或者通过其他方式获取,该第三方数据源中的数据具体由技术人员所配置,可通过显示数据脚本调用该数据读取函数从第三方数据源中读取具体的显示数据。可选地,此处为一个待关联控件对应一个显示数据脚本,也可以是所有待关联控件对应一个总的显示数据脚本,即可以是在生成每个待关联控件对应的显示数据脚本之后对该每个显示数据脚本进行合并得到一个显示数据脚本。此处对显示数据脚本的具体数量不做限制。
在一些实施例中,逻辑控制函数可以包括触发控制函数和显示控制函数。该触发控制函数为触发待关联控件进行显示的函数,即若要对待关联控件进行显示时,可以调用该触发控制函数以控制所配置的显示流程。该触发控制函数可以有多种,该触发控制函数与控件类型有关。例如该目标控件类型是需要通过点击后显示的控件类型,则对应的触发控制函数可以包括点击事件函数、点击取消事件函数等,或者是直接显示的控件类型,则对应的触发控制函数可以包括显示事件函数等。该显示控制函数为指示待关联控件的显示逻辑的函数(即显示方式),即在触发控制函数被调用之后,可以调用该显示控制函数以控制显示流程中对应的显示处理逻辑,例如怎样确定具体的显示数据等。不同控件类型匹配的逻辑控制函数可以不同,可以由技术人员根据实际应用场景设置。目标待关联控件若要进行显示,则该两种逻辑控制函数均需要被调用以获取到目标待关联控件匹配的目标显示方式。
因此在一些实施例中,电子设备根据逻辑控制函数生成目标待关联控件的逻辑控制架构可以是根据触发控制函数生成针对控件触发的第一控制架构,该第一控制架构为包含该触发控制函数所对应的构建和配置场景的基本结构,并根据显示控制函数生成针对控件显示的第二控制架构,将包含第一控制结构和第二控制结构的代码文件作为逻辑控制架构,该第二控制架构为包含该显示控制函数所对应的构建和配置场景的基本结构。可选地,此处为一个待关联控件对应一个逻辑控制架构,该每个待关联控件的逻辑控制架构可以位于同一代码文件中,也可以是位于不同代码文件中。
例如,请参见图3,图3为本申请实施例提供的一种逻辑控制架构的示意图;其中,逻辑控制函数包括触发控制函数(假设表示为RegisterBtnClickEvent),则生成的逻辑控制架构可以如图3,该逻辑控制架构中可以包括构建该触发控制函数的代码语句(图3中的构建语句对应构建场景)、配置该触发控制函数相关信息的代码语句(图3中的配置语句对应配置场景);此处的逻辑控制架构仅为示例,具体逻辑控制架构的形式由实际应用场景确定,此处不做限制。
可以理解的是,该生成的逻辑控制架构为在界面设计中针对逻辑控制脚本的基本结构,其中不包含实际的处理逻辑代码(如具体对控件进行显示的逻辑代码),根据该逻辑控制架构和处理逻辑代码可以得到完整可使用的逻辑控制脚本。不同界面设计所涉及的逻辑控制架构(逻辑控制脚本)的生成原理和过程相同,即逻辑控制函数可以不同,但针对逻辑控制函数生成逻辑控制架构(逻辑控制脚本)的方式同理,以及不同界面设计所涉及的控件声明脚本和显示数据脚本的生成原理和过程相同,因此通过本申请技术方案自动生成该可以与待关联控件进行关联的逻辑控制架构(逻辑控制脚本)、控件声明脚本和显示数据脚本可以节省技术人员在手动编写时的大量重复性操作,从而提高界面设计效率。
S104、分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本。
在一个可能的实施方式中,以待关联控件中的任一待关联控件为目标待关联控件为例,电子设备分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理可以是,对目标待关联控件的控件声明与目标待关联控件对应的逻辑控制架构进行关联处理,得到目标待关联控件的第一关联架构,并对目标待关联控件的显示数据脚本和对应的第一关联架构进行关联处理,得到目标待关联控件的第二关联架构。
在一些实施例中,对目标待关联控件的控件声明与目标待关联控件对应的逻辑控制架构进行关联处理得到目标待关联控件的第一关联架构,具体可以是,基于目标待关联控件的控件声明生成第一控件参数,并添加到对应的逻辑控制架构包含的触发控制函数中,得到添加了第一控件参数的逻辑控制架构,以作为第一关联架构。以及对目标待关联控件的显示数据脚本和对应的第一关联架构进行关联处理得到目标待关联控件的第二关联架构,具体可以是,基于目标待关联控件的显示数据脚本生成第二控件参数,并添加到对应的第一关联架构包含的触发控制函数中,得到添加了第二控件参数的第一关联架构,以作为第二关联架构。其中,针对第一控件参数和第二控件参数的生成规则可以由技术人员根据实际应用场景设置,例如可以是根据控件声明脚本的脚本标识和目标待关联控件的控件标识联合生成,此处不做限制。
在一些实施例中,电子设备在得到每个待关联控件的第二关联架构之后可以根据前述第二关联架构生成逻辑控制脚本,其可以是将包含所有待关联控件搜的第二关联架构对应语句的代码文件作为逻辑控制脚本。该将显示数据脚本和控件声明脚本分别与逻辑控制架构关联可以实现基于逻辑控制脚本的显示数据脚本和控件声明脚本之间的关联,以及进而实现待关联控件与逻辑控制脚本的关联绑定、待关联控件与显示数据脚本的关联绑定。可选地,此处可以为所有待关联控件对应一个逻辑控制脚本,也可以是一个待关联控件对应一个逻辑控制脚本,该逻辑控制脚本包括对应的待关联控件的第二关联架构。此处对待关联控件的具体数量不做限制。此外,该生成的逻辑控制脚本还可以包括其他基本语句(例如对脚本文件的声明等),可以根据实际应用场景确定。
可以理解的是,本申请技术方案可以自动进行待关联控件与各个控件脚本的关联(其中,在完成关联操作之后,待关联控件可视为已关联控件,即一个控件若存在对应的完整控件脚本,则表示该控件已实现关联绑定),以完成在界面设计中的一些重复性的基础操作,从而可以提高控件关联效率和界面设计可靠性。以及此时的逻辑控制脚本包括后续应用所使用的完整逻辑控制脚本的基本结构,技术人员可以在该逻辑控制脚本中根据实际应用场景编写控件具体显示的处理逻辑代码,以得到最终完整的逻辑控制脚本。该最终的逻辑控制脚本可以用于进行应用界面中待关联控件的显示。
S105、获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。
其中,目标界面用于显示每个待关联控件。
在一些实施例中,控件配置信息可以包括针对逻辑控制函数的配置信息(如函数定义信息等)、针对控件显示逻辑的配置信息等,该针对控件显示逻辑的配置信息可以包括待关联控件的显示方式(其中显示方式可以包括控件形态显示方式,如指定控件的显示形态参数(如尺寸方向等),以及可以包括显示数据获取方式,如指定从第三方数据源A获取图像格式的图像数据A等)、针对待关联控件显示的触发条件(如检测到点击、拖拽等行为后会触发执行显示过程)、等等。该配置信息可由技术人员根据实际应用场景设置。电子设备根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面可以是,根据控件配置信息和逻辑控制脚本得到目标逻辑控制脚本,即实际可使用的最终逻辑控制脚本,并根据控件声明脚本、显示数据脚本和目标逻辑控制脚本确定目标界面。其中,该控件配置信息中的部分信息可以嵌套在逻辑控制脚本包括的逻辑控制函数中,以及部分信息可以与逻辑控制函数形成调用关系、参数传递关系等等,从而构成完整的目标逻辑控制脚本。即在运行该目标逻辑控制脚本时既需要调用该逻辑控制函数也需要执行该控制配置信息所指示的显示逻辑。
在一些实施例中,电子设备根据控件声明脚本、显示数据脚本和目标逻辑控制脚本确定目标界面可以是,根据控件声明脚本、显示数据脚本和目标逻辑控制脚本确定每个待关联控件的显示数据,并根据每个待关联控件的显示数据对每个待关联控件进行显示,得到目标界面。
其中,确定每个待关联控件的显示数据的过程和原理相同,此处以一个待关联控件(目标待关联控件)进行阐述;电子设备根据控件声明脚本、显示数据脚本和目标逻辑控制脚本确定每个待关联控件的显示数据,具体可以是:根据目标逻辑控制脚本中的控件配置信息确定针对目标待关联控件的目标显示方式,并由显示数据脚本根据目标显示方式确定出目标待关联控件的目标显示数据。电子设备根据每个待关联控件的显示数据对每个待关联控件进行显示,具体可以是:由控件声明脚本确定目标待关联控件的在应用界面中的目标显示区域,并在目标显示区域显示显示该目标显示数据。
例如,如图4所示,图4为本申请实施例提供的一种确定目标界面的场景示意图;其中,设界面信息包括应用界面文件,当根据目标逻辑控制脚本确定出控件A的显示方式A之后,通过显示数据脚本根据显示方式A从数据库中确定显示数据A,通过控件声明脚本与界面信息包括的控件之间的第一关联关系以及应用界面文件所指示控件于应用界面中的显示区域确定出控件A的显示区域A,并在该显示区域A中对显示数据A进行显示,以将显示控件A的界面确定为目标界面。
可以理解的是,上述控件声明脚本又称视图脚本,用于定义待关联控件以及与界面信息中的待关联控件进行关联以在视图上对待关联控件进行显示;显示数据脚本又称模型脚本,用于定义待关联控件的显示格式以及与逻辑控制脚本进行关联以根据逻辑控制脚本中指示的显示方式确定并获取待关联控件的显示数据;逻辑控制脚本又称控制器脚本,用于将显示视图脚本和模型脚本分隔开以及将视图脚本中的待关联控件和模型脚本中的相应待关联控件进行关联以进行待关联控件显示逻辑的控制,通过分别运行各个脚本可以降低界面设计中各个环节的耦合性,以及前述三种脚本可以是任意计算机语言形式的代码文件,例如C#语言(一种编程语言)形式、JAVA语言(一种编程语言)形式。
本申请实施例中,电子设备可以获取界面信息,获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本,获取每个待关联控件的显示数据脚本和逻辑控制架构,分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本,获取控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。通过上述方法,可以自动生成与待关联控件相关的控件脚本,并完成待关联控件和控件脚本的关联操作,提高控件配置效率和控件与脚本间的关联效率,以及可以提高界面设计效率和可靠性。
请参见图5,图5为本申请实施例提供的一种界面数据处理方法的流程示意图,该方法可以由上述提及的电子设备执行。如图5所示,本申请实施例中界面数据处理方法的流程可以包括如下:
S501、获取界面信息,并基于界面信息输出关联配置界面。
其中,关联配置界面包括多个控件类型的选择项。
在一些实施例中,界面信息中包括多个控件,可以是直接将包括的所有控件作为待关联控件,也可以由技术人员从多个控件中选择指定控件类型的控件作为待关联控件,以用于进行控件的关联绑定。因此,电子设备可以在获取到界面信息之后,基于界面信息中包括的控件类型生成关联配置界面,由技术人员选择控件类型。该关联配置界面中可以展示与界面信息相关的参数选择项,如可以包括的控件类型的选择项,还可以包括所生成的控件脚本的路径选择项等,以及该路径选择项可以是所有控件脚本对应一个路径选择项,也可以是一个控件脚本对应一个路径选择项,该路径选择项表示控件脚本的存储路径。
例如,如图6所示,图6为本申请实施例提供的一种关联配置界面的示意图;其中,设电子设备生成并关联控件脚本由控件关联工具实现,技术人员可以将界面信息拖拽到控件关联工具中的初始配置界面的指定区域,如图6中的(1)所示;电子设备通过控件关联工具以根据拖入的界面信息生成该关联配置界面,该关联配置界面中包括的多个控件类型的选择项以及每个待生成的控件脚本的路径选择项,在触控脚本生成控件后电子设备可以通过控件关联工具执行本申请技术方案,如图6中的(2)所示。
可选地,在一些实施例中,电子设备在获取到界面信息时,可以是默认该界面信息未生成或关联过对应的控件脚本,直接输出该界面信息的关联配置界面并完成控件脚本的生成和绑定。也可以是先检测该界面信息此前是否有生成或关联过对应的控件脚本,可以是检测电子设备中是否存在历史控件脚本以确定是否生成过控件脚本,如检测电子设备中是否存在历史控件脚本相关标识的文件;以及可以是检测电子设备中是否存在历史控件脚本且界面信息中是否存在该历史控件脚本的脚本标识以确定是否关联过对应的控件脚本。
其中,该历史控件脚本表示是在界面信息当前的获取时间点之前就存在的脚本文件。历史控件脚本至少可以包括以下至少一种:历史控件声明脚本、历史显示数据脚本、历史逻辑控制脚本;该历史控件声明脚本基于对已关联控件和已关联控件的控件声明进行关联处理得到;该历史显示数据脚本基于与已关联控件的控件类型匹配的显示格式得到;该历史逻辑控制脚本基于对已关联控件的控件声明、已关联控件的历史显示数据脚本和已关联控件的逻辑控制架构进行关联处理得到;该已关联控件的逻辑控制架构基于与已关联控件的控件类型匹配的逻辑控制函数得到。
基于上述描述,若该界面信息已关联的历史控件脚本,且该已关联的历史控件脚本为上述所描述的三种控件脚本,则不对该界面信息执行任何操作;或者,
若该界面信息已关联部分历史控件脚本,且存在剩余部分的历史控件脚本时,则对界面信息和剩余的历史控件脚本进行关联,例如已关联的历史控件脚本为控件声明脚本、剩余历史控件脚本为逻辑控制脚本和显示数据脚本;该进行关联的方式可以是将剩余历史控件脚本的脚本标识添加到界面信息中,以构建界面信息与该剩余历史控件脚本之间的脚本关联关系;此外,当剩余历史控件脚本为历史控件声明脚本时,还可以进一步确定历史控件声明脚本中的第一关联关系是否匹配,即第一关联关系中所表示的已关联控件的字符串是否与界面信息中所表示的该已关联控件的字符串是否相同,若不同也利用界面信息中的字符串对历史控件声明脚本中的对应字符串进行更新;或者,
若该界面信息已关联部分历史控件脚本,且不存在剩余部分的历史控件脚本时,则可以生成该剩余部分的历史控件脚本,并在生成之后进行关联;或者,
若该界面信息存在部分历史控件脚本,且不存在剩余部分的历史控件脚本时,则可以生成该剩余部分的历史控件脚本,并在生成之后将所有控件脚本进行关联。
可选地,上述历史控件脚本均为符合关联条件的控件脚本,即为正确完整的控件脚本;以及还可以是在检测到有关联或生成的历史控件脚本时,生成对应的提示信息,由技术人员确定是重新生成控件脚本并关联,还是直接基于存在的历史控件脚本进行关联。
S502、根据关联配置界面确定至少一个待关联控件。
在一些实施例中,电子设备检测到关联配置界面中的脚本生成控件被触控时,获取基于多个控件类型的选择项提交的选择指令,确定选择指令所指示的参考控件类型,将界面信息包括的多个控件中属于参考控件类型的控件确定为至少一个待关联控件。
在一些实施例中,在电子设备检测到界面信息具有历史控件脚本且与该历史控件脚本不具有脚本关联关系时,则可以通过关联配置界面进一步确定是否要与该历史控件脚本进行关联绑定。其具体可以是,通过关联配置界面确定了至少一个待关联控件之后,根据历史控件脚本确定已关联控件,若该已关联控件不为或属于至少一个待关联控件时,则继续执行步骤S503;若该已关联控件为或属于至少一个待关联控件时,表示该历史控件脚本适用于当前界面信息的控件关联步骤中,则直接构建界面信息与历史控件脚本的脚本关联关系。可选地,此处也可以是在检测到已关联控件为至少一个待关联控件时,生成对应的提示信息,由技术人员确定是重新生成控件脚本并关联还是直接基于存在的历史控件脚本进行关联。
S503、获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本。
在一些实施例中,电子设备可以根据待关联控件的控件标识和控件类型生成对应的控件声明,其具体方式可以参见上述实施例的相关描述。
在一些实施例中,电子设备分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本具体可以是,遍历界面信息包括的多个控件,当遍历到的控件为待关联控件时,对遍历到的控件与对应的控件声明构建第一关联关系,根据第一关联关系和每个待关联控件的控件声明生成控件声明脚本。其中,构建第一关联关系和生成控件声明脚本的具体方式可以参见上述实施例的相关描述。
例如,如图7所示,图7为本申请实施例提供的一种生成控件声明脚本的场景示意图;其中,设指定的控件类型为UIButton和UILabel(表示界面上的文字类型的控件),以及界面信息中控件类型为UIButton的控件A的标识为ShareBtn,界面信息中控件类型为UILabel的控件B的标识为NameLabel和控件C的标识为TimeLabel,因此每个待关联控件生成的控件声明可以如图7中(1);根据控件声明和第一关联关系生成控件声明脚本,该对待关联控件和对应的控件声明所构建的第一关联关系可以显示在界面上以供技术人员查看,如图7中(2),表示为将界面信息中的待关联控件与控件声明脚本中的对应控件声明进行关联,以及该控件声明脚本中包含所有待关联控件的控件声明,可以如图7中的(3),其“UIShareView”可以表示该控件声明脚本;该控件声明脚本所关联上的待关联控件可以显示在界面上以便于查看,如图7中(4),该包括了2种控件类型的3个控件。此处控件声明脚本仅为示例,实际场景中还可以有其他形式以及包含其他代码语句
S504、获取每个待关联控件的显示数据脚本和逻辑控制架构。其中,步骤S504的具体实施方式可以参见上述实施例的相关描述,此处不再赘述。
S505、分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本。
在一个可能的实施方式中,逻辑控制架构所包含的逻辑控制函数可以包括触发控制函数和显示控制函数,该触发控制函数和显示控制函数的相关描述可以参见上述实施例的相关描述。因此,电子设备对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本具体可以是,分别对每个待关联控件的控件声明与对应的触发控制函数构建第二关联关系,以及分别对每个待关联控件的显示数据脚本与对应的显示控制函数构建第三关联关系,根据第二关联关系、第三关联关系和每个待关联控件的逻辑控制架构生成逻辑控制脚本。可选地,电子设备可以将每个待关联控件对应的显示数据脚本合并为一个显示数据脚本,在进行关联处理时,则是对待关联控件的控件声明、该一个显示数据脚本中待关联控件所对应的部分以及对应的逻辑控制架构进行关联处理,得到逻辑控制脚本。
在一些实施例中,以每个待关联控件中的任一待关联控件为目标待关联控件为例;电子设备对每个待关联控件的控件声明与对应的触发控制函数构建第二关联关系可以是,基于控件声明脚本的脚本标识生成目标待关联控件的控件声明对应的目标声明标识,并根据该目标声明标识和目标待关联控件对应的触发控制函数生成第一关联语句,该第一关联语句中的目标声明标识可以作为第一控件参数添加到对应的触发控制函数中,即表示为触发控制函数中所需的函数参数;该第一关联语句则表示了第二关联关系。电子设备可以将包含第一关联语句的逻辑控制架构作为第一关联架构。其中,基于控件声明脚本生成目标声明标识的生成规则以及第一关联语句的生成规则可以由技术人员根据实际应用场景设置,在此不做限制。
在一些实施例中,以每个待关联控件中的任一待关联控件为目标待关联控件为例;电子设备对每个待关联控件的显示数据脚本与对应的显示控制函数构建第三关联关系可以是,基于(合并后的)显示数据脚本的脚本标识生成目标待关联控件的显示数据脚本对应的目标数据标识,并将该目标数据标识和目标待关联控件对应的显示控制函数生成第二关联语句,在该第二关联语句中,目标数据标识可以作为第二控件参数添加到对应的显示控制函数中,即表示为显示控制函数中所需的函数参数;该第二关联语句则表示了第三关联关系。以及电子设备可以将包含第二关联语句的逻辑控制架构作为第二关联架构,并将第一关联架构和第二关联架构进行合并,得到目标待关联控件的关联后的逻辑控制结构;也可以是直接基于第一关联架构得到包含第二关联语句的第二关联架构,并将第二关联架构作为目标待关联控件的关联后的逻辑控制结构。其中,构建第三关联关系的过程和方式可以同构建第二关联关系的过程和方式。以及基于(合并后的)显示数据脚本生成目标数据标识的生成规则以及第二关联语句的生成规则可以由技术人员根据实际应用场景设置,在此不做限制。
例如,如图8所示,图8为本申请实施例提供的一种构建第二关联关系的场景示意图;其中,逻辑控制架构中所包含目标待关联控件的触发控制函数包括函数1(设表示为“RegisterBtnClickEvent()”)和函数2(设表示为“OnShareBtnClick()”),可以如图8中的(1),设控件声明脚本的脚本标识表示为mView、目标待关联控件的控件声明为“publicUIButton ShareBtn”、对应的声明表示为mView.ShareBtn,因此可以根据目标声明标识和触发控制函数生成对应的关联语句,该关联语句表示将目标声明标识添加到触发控制函数对应的所需参数处,以构建目标待关联控件的控件声明与触发控制函数的第二关联关系,如图8中的(2);此处仅为示例,实际场景中还可以有其他形式的构建方式。
又如,对第二关联关系、第三关联关系以及每个待关联控件的逻辑控制架构进行合并,可以得到逻辑控制脚本,该逻辑控制脚本中包括每个待关联控件对应的代码语句(如第二关联关系、第三关联关系、逻辑控制架构等),逻辑控制脚本可以如图9所示,图9为本申请实施例提供的一种逻辑控制脚本的示意图,其中:“UIShareController”可以表示该逻辑控制脚本,“RegisterBtnClickEvent()”和“OnShareBtnClick()”表示触发控制函数包括函数,“mView.ShareBtn”表示声明标识并用于构建第二关联关系,“ShareBtnshow()”表示显示控制函数,“mModel.ShareBtn”表示数据标识并用于构建第三关联关系。此处逻辑控制脚本仅为示例,实际场景中还可以有其他形式以及包含其他代码语句。
基于上述描述,电子设备可以将包含每个待关联控件的逻辑控制架构且包含每个待关联控件的控件声明对应的第一关联语句和每个待关联控件的显示数据脚本对应的第二关联语句作为逻辑控制脚本。以及,在得到上述三种控件脚本之后,可以自动将该三种控件脚本与界面设计的界面信息进行关联绑定,具体可以是将三种控件脚本的脚本标识(如名称)添加到界面信息所在的文件中,以节省技术人员将控件脚本与界面信息进行绑定的时间。
S506、获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。
其中,目标界面用于显示每个待关联控件。
在一些实施例中,电子设备可以输出逻辑控制脚本,该控件配置信息由技术人员通过逻辑控制脚本的输出界面进行配置,电子设备根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面,具体可以是,根据控件配置信息和逻辑控制脚本生成目标逻辑控制脚本,即最终完整的逻辑控制脚本,并根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示,得到目标界面。
在一些实施例中,该控件配置信息可以包括每个待关联控件的触发条件和显示方式;因此电子设备根据控件配置信息和逻辑控制脚本生成目标逻辑控制脚本可以是根据每个待关联控件的触发条件、每个待关联控件的显示方式和逻辑控制脚本生成目标逻辑控制脚本。可选地,控件配置信息还可以包括其他配置信息,如相关函数配置数据等。当还包括其他配置信息时,则根据每个待关联控件的触发条件、显示方式、其他配置信息和逻辑控制脚本生成目标逻辑控制脚本。其中,控件配置信息的相关描述可以参见上述实施例的相关描述。
在一些实施例中,以至少一个待关联控件中的任一待关联控件为目标待关联控件为例,电子设备根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示,具体可以是,当检测到目标待关联控件满足目标待关联控件的触发条件时,调用目标待关联控件的触发控制函数以及目标待关联控件的显示控制函数以执行控件的显示逻辑,得到目标待关联控件的目标显示方式,根据目标显示方式从显示数据脚本中确定目标待关联控件的目标显示数据,通过控件声明脚本中的第一关联关系确定目标待关联控件的目标显示区域,并在目标显示区域显示目标显示数据。电子设备可以将对所有待关联控件进行显示的界面确定为目标界面。基于上述描述,该逻辑控制脚本可以用于确定待关联控件的显示方式,显示数据脚本可以用于根据显示方式确定显示数据,控件声明脚本可以用于通过界面信息和/或应用界面文件确定待关联控件的显示区域并在该显示区域上对显示数据进行显示。
例如,如图10所示,图10为本申请实施例提供的一种界面数据处理方法的交互示意图;其中:
(1)拖拽界面信息所在文件至初始配置界面中;其中,如可以是技术人员将界面信息拖拽到初始配置界面的指定区域或任意区域,也可以是在电子设备检测到针对界面信息的关联指令时,将该指示的界面信息拖拽到初始配置界面的指定区域或任意区域等;
(2)电子设备基于界面信息输出关联配置界面;该关联配置界面中包括可以配置的参数,如多个控件类型的选择项、各个控件脚本的路径选择项等;
(3)在关联配置界面中指定控件类型,并点击脚本生成控件;其中,如可以是技术人员在进行相关配置之后,点击脚本生成控件,也可以是电子设备直接默认相关配置设置,并自动点击脚本生成控件等;
(4)电子设备根据指定控件类型确定至少一个待关联控件以及获取所设置的脚本存储路径;
(5)电子设备生成每个待关联控件所对应的三种控件脚本,并存储在对应的脚本存储路径中,以及完成所生成的控件脚本与待关联控件之间的关联操作和对该控件脚本与界面信息进行绑定。
又如,如图11所示,图11为本申请实施例提供的一种界面数据处理方法的流程框架示意图;其中:
S1、电子设备输出初始配置界面;
S2、获取用户拖入的界面信息(prefab);
S3、根据界面信息输出关联配置界面,并接收用户在关联配置界面上选择的指定控件类型;
S4、根据指定控件类型从界面信息确定至少一个待关联控件;
S5、检测是否存在历史控件脚本:若存在,则执行S6;若不存在,则执行S7;
S6、检测该历史控件脚本与界面信息是否存在脚本关联关系:若存在,则执行S10;若不存在,则执行S9;
S7、分别生成每个待关联控件的控件声明、显示数据脚本、逻辑控制架构;
S8、合并每个待关联控件的控件声明并执行上述关联处理步骤得到控件声明脚本,合并每个待关联控件的显示数据脚本得到合并后的显示数据脚本,合并每个待关联控件的逻辑控制架构并执行上述关联处理步骤得到逻辑控制脚本;
S9、将控件声明脚本、合并后的显示数据脚本、逻辑控制脚本和界面信息进行关联绑定;
S10、结束关联流程;
可选地,上述流程可以通过控件关联工具实现,该控件关联工具中可以包括多个功能代码文件,该功能代码文件可以是由任意计算机语言形式编写的,如由C#语言形式编写的后缀名为“.cs”的代码文件,该多个功能代码文件的名称可以表示为UIScriptGenerator、UIScriptProcessor、UIScriptCompoentProcessor以及UIScriptHelper,其中,UIScriptHelper可以用于检测是否存在历史控件脚本以及历史控件脚本与界面信息是否存在脚本关联关系、UIScriptCompoentProcessor可以用于生成每个待关联控件对应的控件代码(即控件声明、显示数据脚本和逻辑控制架构)、UIScriptProcessor可以用于汇总UIScriptCompoentProcessor中每个待关联控件所生成的控件代码,并进行关联操作,得到每个待关联控件关联后的控件代码、UIScriptGenerator可以用于根据UIScriptProcessor中每个待关联控件关联后的控件代码生成对应的控件声明脚本、(合并后的)显示数据脚本和逻辑控制脚本。
本申请实施例中,电子设备可以获取界面信息,并基于界面信息输出关联配置界面,根据关联配置界面确定至少一个待关联控件,获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本,获取每个待关联控件的显示数据脚本和逻辑控制架构,分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本。通过上述方法,可以自动根据脚本生成规则和脚本关联规则,生成与待关联控件相关的控件脚本并完成待关联控件和控件脚本的关联操作,可以节省技术人员编写重复性代码和对待关联控件进行关联绑定的时间和工作,提高控件配置效率和控件与脚本间的关联效率,以及可以提高界面设计效率和可靠性,同时基于预设规则自动生成不同界面信息中的待关联控件对应的控件脚本,可以便于同一代码风格和后续技术人员的维护和开发。
请参见图12,图12为本申请提供的一种界面数据处理装置的结构示意图。需要说明的是,图12所示的界面数据处理装置,用于执行本申请图2和图5所示实施例的方法,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示,经参照本申请图2和图5所示的实施例。该界面数据处理装置1200可包括:获取单元1201、处理单元1202、确定单元1203。其中:
获取单元1201,用于获取界面信息;该界面信息包括至少一个待关联控件;
获取单元1201,还用于获取至少一个待关联控件中每个待关联控件的控件声明;
处理单元1202,用于分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
获取单元1201,还用于获取每个待关联控件的显示数据脚本和逻辑控制架构;
处理单元1202,还用于分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
确定单元1203,用于获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面;该目标界面用于显示每个待关联控件。
在一个可能的实施方式中,获取单元1201还用于:
基于界面信息输出关联配置界面;该关联配置界面包括多个控件类型的选择项;
在检测到基于多个控件类型的选择项提交的选择指令时,确定选择指令所指示的参考控件类型;
将界面信息包括的多个控件中属于参考控件类型的控件确定为至少一个待关联控件。
在一个可能的实施方式中,处理单元1202在用于分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本时,具体用于:
遍历界面信息包括的多个控件;
当遍历到的控件为待关联控件时,对遍历到的控件与对应的控件声明构建第一关联关系;
根据第一关联关系和每个待关联控件的控件声明生成控件声明脚本。
在一个可能的实施方式中,获取单元1201在用于获取每个待关联控件的显示数据脚本和逻辑控制架构时,具体用于:
获取目标待关联控件的目标控件类型,并获取与目标控件类型匹配的显示格式以及逻辑控制函数;该目标待关联控件为至少一个待关联控件中的任一待关联控件;
根据显示格式生成目标待关联控件的显示数据脚本,并根据逻辑控制函数生成目标待关联控件的逻辑控制架构。
在一个可能的实施方式中,逻辑控制架构包括触发控制函数和显示控制函数;
处理单元1202在用于分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本时,具体用于:
分别对每个待关联控件的控件声明与对应的触发控制函数构建第二关联关系;
分别对每个待关联控件的显示数据脚本与对应的显示控制函数构建第三关联关系;
根据第二关联关系、第三关联关系和每个待关联控件的逻辑控制架构生成逻辑控制脚本。
在一个可能的实施方式中,控件配置信息包括每个待关联控件的触发条件和每个待关联控件的显示方式;
确定单元1203在用于根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面时,具体用于:
根据每个待关联控件的触发条件、每个待关联控件的显示方式和逻辑控制脚本生成目标逻辑控制脚本;
根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示,得到目标界面。
在一个可能的实施方式中,确定单元1203在用于根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示时,具体用于:
当检测到目标待关联控件满足目标待关联控件的触发条件时,调用目标待关联控件的触发控制函数以及目标待关联控件的显示控制函数,得到目标待关联控件的目标显示方式;该目标待关联控件为至少一个待关联控件中的任一待关联控件;
根据目标显示方式从显示数据脚本中确定目标待关联控件的目标显示数据;
通过控件声明脚本中的第一关联关系确定目标待关联控件的目标显示区域,并在目标显示区域显示目标显示数据。
在一个可能的实施方式中,获取单元1201还用于:
若检测到历史控件脚本,且界面信息与历史控件脚本之间不具有脚本关联关系,则根据历史控件脚本确定已关联控件;
若已关联控件不为至少一个待关联控件,则执行获取至少一个待关联控件中每个待关联控件的控件声明的步骤;
其中,上述历史控件脚本至少包括以下至少一种:历史控件声明脚本、历史显示数据脚本、历史逻辑控制脚本;历史控件声明脚本基于对已关联控件和已关联控件的控件声明进行关联处理得到;历史显示数据脚本基于与已关联控件的控件类型匹配的显示格式得到;历史逻辑控制脚本基于对已关联控件的控件声明、已关联控件的历史显示数据脚本和已关联控件的逻辑控制架构进行关联处理得到;已关联控件的逻辑控制架构基于与已关联控件的控件类型匹配的逻辑控制函数得到。
本申请实施例中,获取单元获取界面信息;获取单元获取至少一个待关联控件中每个待关联控件的控件声明;处理单元分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;获取单元获取每个待关联控件的显示数据脚本和逻辑控制架构;处理单元分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;确定单元获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面。通过上述装置,可以自动生成与待关联控件相关的控件脚本,并完成待关联控件和控件脚本的关联操作,提高控件配置效率和控件与脚本间的关联效率,以及可以提高界面设计效率和可靠性。
在本申请各个实施例中的各功能单元可以集成在一个处理模块(单元)中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个模块中。上述集成的模块(单元)既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现,本申请不做限定。
请参见图13,图13为本申请实施例提供的一种电子设备的结构示意图。如图13所示,该电子设备1300包括:至少一个处理器1301、存储器1302。可选的,该电子设备还可包括网络接口。其中,处理器1301、存储器1302以及网络接口之间可以交互数据,网络接口受处理器1301的控制用于收发消息,存储器1302用于存储计算机程序,该计算机程序包括程序指令,处理器1301用于执行存储器1302存储的程序指令。其中,处理器1301被配置用于调用该程序指令执行上述方法。
其中,存储器1302可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1302也可以包括非易失性存储器(non-volatilememory),例如快闪存储器(flash memory),固态硬盘(solid-state drive,SSD)等;存储器1302还可以包括上述种类的存储器的组合。
其中,处理器1301可以是中央处理器(central processing unit,CPU)。在一个实施例中,处理器1301还可以是图形处理器(Graphics Processing Unit,GPU)。处理器1301也可以是由CPU和GPU的组合。
在一个可能的实施方式中,存储器1302用于存储程序指令,处理器1301可以调用该程序指令,执行以下步骤:
获取界面信息;该界面信息包括至少一个待关联控件;
获取至少一个待关联控件中每个待关联控件的控件声明,并分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
获取每个待关联控件的显示数据脚本和逻辑控制架构;
分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
获取至少一个待关联控件的控件配置信息,并根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面;该目标界面用于显示每个待关联控件。
在一个可能的实施方式中,处理器1301还用于:
基于界面信息输出关联配置界面;该关联配置界面包括多个控件类型的选择项;
在检测到基于多个控件类型的选择项提交的选择指令时,确定选择指令所指示的参考控件类型;
将界面信息包括的多个控件中属于参考控件类型的控件确定为至少一个待关联控件。
在一个可能的实施方式中,处理器1301在用于分别对每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本时,具体用于:
遍历界面信息包括的多个控件;
当遍历到的控件为待关联控件时,对遍历到的控件与对应的控件声明构建第一关联关系;
根据第一关联关系和每个待关联控件的控件声明生成控件声明脚本。
在一个可能的实施方式中,处理器1301在用于获取每个待关联控件的显示数据脚本和逻辑控制架构时,具体用于:
获取目标待关联控件的目标控件类型,并获取与目标控件类型匹配的显示格式以及逻辑控制函数;该目标待关联控件为至少一个待关联控件中的任一待关联控件;
根据显示格式生成目标待关联控件的显示数据脚本,并根据逻辑控制函数生成目标待关联控件的逻辑控制架构。
在一个可能的实施方式中,逻辑控制架构包括触发控制函数和显示控制函数;
处理器1301在用于分别对每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本时,具体用于:
分别对每个待关联控件的控件声明与对应的触发控制函数构建第二关联关系;
分别对每个待关联控件的显示数据脚本与对应的显示控制函数构建第三关联关系;
根据第二关联关系、第三关联关系和每个待关联控件的逻辑控制架构生成逻辑控制脚本。
在一个可能的实施方式中,控件配置信息包括每个待关联控件的触发条件和每个待关联控件的显示方式;
处理器1301在用于根据控件声明脚本、显示数据脚本、逻辑控制脚本和控件配置信息确定目标界面时,具体用于:
根据每个待关联控件的触发条件、每个待关联控件的显示方式和逻辑控制脚本生成目标逻辑控制脚本;
根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示,得到目标界面。
在一个可能的实施方式中,处理器1301在用于根据控件声明脚本、显示数据脚本、目标逻辑控制脚本对每个待关联控件进行显示时,具体用于:
当检测到目标待关联控件满足目标待关联控件的触发条件时,调用目标待关联控件的触发控制函数以及目标待关联控件的显示控制函数,得到目标待关联控件的目标显示方式;该目标待关联控件为至少一个待关联控件中的任一待关联控件;
根据目标显示方式从显示数据脚本中确定目标待关联控件的目标显示数据;
通过控件声明脚本中的第一关联关系确定目标待关联控件的目标显示区域,并在目标显示区域显示目标显示数据。
在一个可能的实施方式中,处理器1301还用于:
若检测到历史控件脚本,且界面信息与历史控件脚本之间不具有脚本关联关系,则根据历史控件脚本确定已关联控件;
若已关联控件不为至少一个待关联控件,则执行获取至少一个待关联控件中每个待关联控件的控件声明的步骤;
其中,上述历史控件脚本至少包括以下至少一种:历史控件声明脚本、历史显示数据脚本、历史逻辑控制脚本;历史控件声明脚本基于对已关联控件和已关联控件的控件声明进行关联处理得到;历史显示数据脚本基于与已关联控件的控件类型匹配的显示格式得到;历史逻辑控制脚本基于对已关联控件的控件声明、已关联控件的历史显示数据脚本和已关联控件的逻辑控制架构进行关联处理得到;已关联控件的逻辑控制架构基于与已关联控件的控件类型匹配的逻辑控制函数得到。
具体实现中,上述所描述的界面数据处理装置1200、处理器1301、存储器1302等可执行上述方法实施例所描述的实现方式,也可执行本申请实施例所描述的实现方式,在此不再赘述。
本申请实施例中还提供一种计算机(可读)存储介质,该计算机存储介质存储有计算机程序,计算机程序包括程序指令,程序指令被处理器执行时,使处理器可执行上述方法实施例中所执行的部分或全部步骤。可选的,该计算机存储介质可以是易失性的,也可以是非易失性的。计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,该计算机指令被处理器执行时可实现上述方法中的部分或全部步骤。
在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,前述的程序可存储于计算机存储介质中,该计算机存储介质可以为计算机可读存储介质,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本申请的部分实施例而已,当然不能以此来限定本申请之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本申请权利要求所作的等同变化,仍属于本申请所涵盖的范围。
Claims (10)
1.一种界面数据处理方法,其特征在于,所述方法包括:
获取界面信息;所述界面信息包括至少一个待关联控件;
获取所述至少一个待关联控件中每个待关联控件的控件声明,并分别对所述每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
获取所述每个待关联控件的显示数据脚本和逻辑控制架构;
分别对所述每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
获取所述至少一个待关联控件的控件配置信息,并根据所述控件声明脚本、所述显示数据脚本、所述逻辑控制脚本和所述控件配置信息确定目标界面;所述目标界面用于显示所述每个待关联控件。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
基于所述界面信息输出关联配置界面;所述关联配置界面包括多个控件类型的选择项;
在检测到基于所述多个控件类型的选择项提交的选择指令时,确定所述选择指令所指示的参考控件类型;
将所述界面信息包括的多个控件中属于所述参考控件类型的控件确定为所述至少一个待关联控件。
3.根据权利要求2所述的方法,其特征在于,所述分别对所述每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本,包括:
遍历所述界面信息包括的多个控件;
当遍历到的控件为所述待关联控件时,对所述遍历到的控件与所述对应的控件声明构建第一关联关系;
根据所述第一关联关系和所述每个待关联控件的控件声明生成所述控件声明脚本。
4.根据权利要求1所述的方法,其特征在于,所述获取所述每个待关联控件的显示数据脚本和逻辑控制架构,包括:
获取目标待关联控件的目标控件类型,并获取与所述目标控件类型匹配的显示格式以及逻辑控制函数;所述目标待关联控件为所述至少一个待关联控件中的任一待关联控件;
根据所述显示格式生成所述目标待关联控件的显示数据脚本,并根据所述逻辑控制函数生成所述目标待关联控件的逻辑控制架构。
5.根据权利要求1所述的方法,其特征在于,所述逻辑控制架构包括触发控制函数和显示控制函数;
所述分别对所述每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本,包括:
分别对所述每个待关联控件的控件声明与对应的触发控制函数构建第二关联关系;
分别对所述每个待关联控件的显示数据脚本与对应的显示控制函数构建第三关联关系;
根据所述第二关联关系、所述第三关联关系和所述每个待关联控件的逻辑控制架构生成所述逻辑控制脚本。
6.根据权利要求1所述的方法,其特征在于,所述控件配置信息包括所述每个待关联控件的触发条件和所述每个待关联控件的显示方式;
所述根据所述控件声明脚本、所述显示数据脚本、所述逻辑控制脚本和所述控件配置信息确定目标界面,包括:
根据所述每个待关联控件的触发条件、所述每个待关联控件的显示方式和所述逻辑控制脚本生成目标逻辑控制脚本;
根据所述控件声明脚本、所述显示数据脚本、所述目标逻辑控制脚本对所述每个待关联控件进行显示,得到所述目标界面。
7.根据权利要求6所述的方法,其特征在于,所述根据所述控件声明脚本、所述显示数据脚本、所述目标逻辑控制脚本对所述每个待关联控件进行显示,包括:
当检测到目标待关联控件满足所述目标待关联控件的触发条件时,调用所述目标待关联控件的触发控制函数以及所述目标待关联控件的显示控制函数,得到所述目标待关联控件的目标显示方式;所述目标待关联控件为所述至少一个待关联控件中的任一待关联控件;
根据所述目标显示方式从所述显示数据脚本中确定所述目标待关联控件的目标显示数据;
通过所述控件声明脚本中的第一关联关系确定所述目标待关联控件的目标显示区域,并在所述目标显示区域显示所述目标显示数据。
8.一种界面数据处理装置,其特征在于,所述装置包括:
获取单元,用于获取界面信息;所述界面信息包括至少一个待关联控件;
所述获取单元,还用于获取所述至少一个待关联控件中每个待关联控件的控件声明;
处理单元,用于分别对所述每个待关联控件和对应的控件声明进行关联处理,得到控件声明脚本;
所述获取单元,还用于获取所述每个待关联控件的显示数据脚本和逻辑控制架构;
所述处理单元,还用于分别对所述每个待关联控件的控件声明、对应的显示数据脚本和对应的逻辑控制架构进行关联处理,得到逻辑控制脚本;
确定单元,用于获取所述至少一个待关联控件的控件配置信息,并根据所述控件声明脚本、所述显示数据脚本、所述逻辑控制脚本和所述控件配置信息确定目标界面;所述目标界面用于显示所述每个待关联控件。
9.一种电子设备,其特征在于,包括处理器和存储器,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210266690.XA CN116795358A (zh) | 2022-03-17 | 2022-03-17 | 界面数据处理方法、装置、电子设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210266690.XA CN116795358A (zh) | 2022-03-17 | 2022-03-17 | 界面数据处理方法、装置、电子设备及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116795358A true CN116795358A (zh) | 2023-09-22 |
Family
ID=88033192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210266690.XA Pending CN116795358A (zh) | 2022-03-17 | 2022-03-17 | 界面数据处理方法、装置、电子设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116795358A (zh) |
-
2022
- 2022-03-17 CN CN202210266690.XA patent/CN116795358A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11163851B2 (en) | Method, apparatus, computer device and storage medium of page displaying | |
CN107820701B (zh) | 开发者交换系统 | |
EP3011442B1 (en) | Method and apparatus for customized software development kit (sdk) generation | |
US8751558B2 (en) | Mashup infrastructure with learning mechanism | |
US7769698B2 (en) | Navigation through components | |
CN114064024B (zh) | 微应用的开发方法、装置、设备、存储介质及程序产品 | |
CA3050159C (en) | Artificial intelligence (ai) based automatic rule generation | |
CN111427561A (zh) | 业务代码的生成方法、装置、计算机设备和存储介质 | |
JP7350923B2 (ja) | ディープラーニングフレームワークのオペレータ登録方法、装置、デバイス及び記憶媒体 | |
JP5209016B2 (ja) | WebAPI作成支援装置及びWebAPI作成支援方法 | |
CN106897153B (zh) | 调用应用编程接口的方法和系统 | |
US10572278B2 (en) | Smart controls for user interface design and implementation | |
CN112465448B (zh) | 基于区块链的跨组织工作流运行方法及系统 | |
CN110765746B (zh) | 基于事件代理的表单自动生成方法和系统 | |
US20160070680A1 (en) | Systems and methods for a metadata driven user interface framework | |
CN113407284A (zh) | 导航界面的生成方法、装置、存储介质及电子设备 | |
CN116360735A (zh) | 一种表单生成方法、装置、设备和介质 | |
US20130212598A1 (en) | Dependency informer | |
US20140033167A1 (en) | Method and system for generating a manifestation of a model in actionscript | |
CN114741071A (zh) | 一种应用构建方法及装置 | |
CN116795358A (zh) | 界面数据处理方法、装置、电子设备及介质 | |
CN113918194A (zh) | 一种页面组件的显示方法、装置、电子设备及存储介质 | |
CN114489619A (zh) | 一种界面视图显示方法及终端设备、计算机可读存储介质 | |
CN112068895A (zh) | 代码配置方法、装置、视频播放设备及存储介质 | |
CN111176648B (zh) | 免安装程序转换处理方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40092356 Country of ref document: HK |