The embodiment of the invention discloses an interface layout method, a device, an electronic device and a storage medium. The method includes: acquiring data source array and layout rule parameters by setting wrapper interface; constructing parent view program and child view program corresponding to the number of data source array in interface layout program according to data source array, in which each child view is laid out in the scope of parent view; and according to parent view The dimension and the layout rule parameters are used to calculate the inter-view constraint parameters of the sub-views. According to the inter-view constraint parameters, the automatic layout algorithm of a single sub-view is invoked to create a view layout constraint program for each sub-view to improve the interface layout program. Through the above technical scheme, the batch layout of multiple modular sub-views in the interface layout can be realized more easily and quickly, the development process can be simplified, and the development efficiency of developers can be improved.
【技术实现步骤摘要】
一种界面布局方法、装置、电子设备及存储介质
本专利技术实施例涉及应用开发技术,尤其涉及一种界面布局方法、装置、电子设备及存储介质。
技术介绍
在应用程序的界面布局程序开发过程中,会遇到很多模块化的子视图布局的需求,例如,word应用程序界面中的菜单栏,有诸如“文件”、“开始”和“插入”等功能菜单选项。整个菜单栏相当于父视图,每个菜单选项都相当于子视图。在创建菜单栏的界面布局程序时,基于一个子视图程序模板,根据不同数据源生成多个子视图的程序代码段,子视图程序中还需生成表示子视图之间位置布局约束的视图布局约束程序,从而形成界面布局程序。对于IOS或Android等移动操作系统的界面布局程序的开发而言,目前已有单个子视图的自动布局算法来生成界面布局程序中的视图布局约束程序。利用现有的单个子视图自动布局算法进行界面布局程序生成时,开发人员需要先在初始界面布局程序中创建子视图程序,然后手动设定单个待布局子视图的视图间约束参数,例如相邻子视图的中心轴线需重合等位置约束参数,并调用约束创建语句创建相应的视图布局约束程序,即可生成完整的界面布局程序。但是,在利用现有的单个子视图自动布局算法,对多个模块化的子视图布局时,就需要开发人员人为地为每一个待布局子视图设定视图间约束参数,并多次重复调用相同的约束创建语句为每一个待布局子视图创建视图布局约束程序,这无疑增大了开发人员的工作量,降低了开发人员的开发效率。
技术实现思路
本专利技术实施例提供一种界面布局方法、装置、电子设备及存储介质,能够更加简便且快速地实现界面布局中多个模块化子视图的批量布局,简化开发过程,提高开发人员的开发 ...
【技术保护点】
1.一种界面布局方法,其特征在于,包括:通过设定封装程序接口获取数据源数组以及布局规则参数;依据数据源数组,在界面布局程序中构建父视图程序以及与所述数据源数组对应数量的子视图程序,其中,各子视图布局在父视图的范围内;依据父视图尺寸以及所述布局规则参数,计算各所述子视图的视图间约束参数;依据各所述视图间约束参数,调用单个子视图的自动布局算法,分别为各所述子视图创建视图布局约束程序,以完善所述界面布局程序。
【技术特征摘要】
1.一种界面布局方法,其特征在于,包括:通过设定封装程序接口获取数据源数组以及布局规则参数;依据数据源数组,在界面布局程序中构建父视图程序以及与所述数据源数组对应数量的子视图程序,其中,各子视图布局在父视图的范围内;依据父视图尺寸以及所述布局规则参数,计算各所述子视图的视图间约束参数;依据各所述视图间约束参数,调用单个子视图的自动布局算法,分别为各所述子视图创建视图布局约束程序,以完善所述界面布局程序。2.根据权利要求1所述的方法,其特征在于,所述依据各所述视图间约束参数,调用单个子视图的自动布局算法,分别为各所述子视图创建视图布局约束程序,以完善所述界面布局程序包括:根据子视图在父视图中的视图布局顺序,从各所述子视图中确定第一个子视图作为当前子视图;依据当前子视图的视图间约束参数,以父视图为基准,调用所述自动布局算法为当前子视图创建视图布局约束程序;基于当前子视图的视图布局约束程序更新临时视图的视图布局约束程序;以所述临时视图为基准,根据下一个子视图的视图间约束参数调用所述自动布局算法,为下一个子视图创建视图布局约束程序;更新下一个子视图为当前子视图,返回执行更新临时视图的视图布局约束程序的操作,直至所有子视图布局完成,以完善所述界面布局程序。3.根据权利要求1所述的方法,其特征在于,所述依据各所述视图间约束参数,调用单个子视图的自动布局算法,分别为各所述子视图创建视图布局约束程序,以完善所述界面布局程序包括:确定当前的待布局行号;依据所述待布局行号对应的各子视图的所述视图间约束参数,调用所述自动布局算法,为所述待布局行号对应的各子视图创建视图布局约束程序;返回执行确定当前的待布局行号的操作,直至所有子视图布局完成,以完善所述界面布局程序。4.根据权利要求1所述的方法,其特征在于,所述依据父视图尺寸以及所述布局规则参数,计算各所述子视图的视图间约束参数包括:依据父视图尺寸以及所述布局规则参数中的视图均匀布局规则、布局行数、布局列数、布局间距和布局边距,计算子视图宽度和子视图高度,并将所述子视图宽度、所述子视图高度、所述布局边距中的上边距和左边距以及所述布局间距中的行间距和列间距,作为所述视图间约束参数。5.根据权利要求4所述的方法,其特征在于,所述依据各所述视图间约束参数,调用单个子视图的自动布局算法,分别为各所述子视图创建视图布局约束程序,以完善所述界面布局程序包括:依据所述上边距、所述子视图高度、所述行间距和待布局行号,确定每行中首个子视图的上约束参数,确定所述左边距为所述首个子视图的左约束参数,确定所述子视图高度...
【专利技术属性】
技术研发人员:李琪,陈少杰,张文明,
申请(专利权)人:武汉斗鱼网络科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。