用户界面控件的布局方法及系统、控制方法及系统的制作方法

文档序号:10552677阅读:195来源:国知局
用户界面控件的布局方法及系统、控制方法及系统的制作方法
【专利摘要】本发明涉及多媒体技术领域,公开了一种用户界面控件的布局方法及系统、控制方法及系统,该用户界面控件的布局方法,包含以下步骤:创建一个相对布局容器;其中,相对布局容器用于盛放子控件,子控件为相对布局容器或者普通控件;为相对布局容器指定子控件的属性;生成子控件;如果子控件为相对布局容器,则重复上述步骤,直到相对布局容器内的所有子控件均为普通控件。本发明中,可以将多个不同尺寸或者类型的UI控件通过布局排布逐一生成,而且不同尺寸或者类型的UI控件之间可以相互嵌套,从而能够快速的实现不同规则的UI界面,以满足各种产品对UI控件排布的不同需求。
【专利说明】
用户界面控件的布局方法及系统、控制方法及系统
技术领域
[0001]本发明涉及多媒体技术领域,特别涉及多媒体技术领域中的用户界面控件的布局方法及系统、控制方法及系统。
【背景技术】
[0002]随着科学技术的不断发展以及多媒体技术的不断进步,用于播放视频的应用软件的种类也越来越多、功能也越来越强大,用户可以在移动终端中安装视频应用,而后通过视频应用观看视频,且伴随着互联网基础设施的完善,网速的增加和上网成本的降低,利用移动终端在网上观看视频的用户的数量也越来越多。视频应用可以为用户播放大量的视频,例如用户可以利用视频应用观看直播、比赛、卫视节目等。
[0003]在视频播放的界面中会显示各种3D控件,如视频播放设备上已安装的应用对应的应用图标等。比如人们生活中常用的视频播放器设备:智能电视。目前的智能电视往往都是只能通过使用遥控设备来对界面中的控件进行选择操作,如使用遥控设备来选择某一应用图标以进入用户需要的应用。但是在实际的应用中,用户可能会对界面中的3D控件有多种多样的操作需求,例如3D控件移动,3D控件管理,查看影评等。而且当前基于手机的虚拟现实应用中存在着大量与影片信息相关的3D UI控件(UI是User Interface的简称,中文释义为用户界面)。当前基于手机的虚拟现实VR(VR是Virtual Reality的简称,中文释义为虚拟现实)应用中创建3D控件,一般都是根据特定场景UI界面的需要,在该场景的UI菜单里单独创建每个3D控件。但是当前在基于手机的虚拟现实VR应用中创建3D控件的方法比较单一和繁琐。

【发明内容】

[0004]本发明的目的在于提供一种用户界面控件的布局方法及系统、控制方法及系统,使得多个不同尺寸或者类型的UI控件可以通过布局排布逐一生成,而且不同尺寸或者类型的UI控件之间可以相互嵌套,从而能够快速的实现不同规则的UI界面,以满足各种产品对UI控件排布的不同需求。
[0005]为解决上述技术问题,本发明的实施方式提供了一种用户界面控件的布局方法,包含以下步骤:仓Il建一个相对布局容器;其中,相对布局容器用于盛放子控件,子控件为相对布局容器或者普通控件;为相对布局容器指定子控件的属性;生成子控件;如果子控件为相对布局容器,则重复上述步骤,直到相对布局容器内的所有子控件均为普通控件。
[0006]本发明的实施方式还提供了一种用户界面控件的控制方法,包含以下步骤:获取预设操作事件;根据获取的预设操作,修改相对布局容器中响应该预设操作的子控件的特有属性;其中,用户界面控件采用以上所描述的用户界面控件的布局方法进行布局。
[0007]本发明的实施方式还提供了一种用户界面控件的布局系统,包含:创建模块,属性指定模块,子控件生成模块和判断模块;创建模块用于创建一个相对布局容器;其中,相对布局容器用于盛放子控件,子控件为相对布局容器或者普通控件;属性指定模块用于为相对布局容器指定子控件的属性;子控件生成模块用于生成子控件;判断模块用于判断子控件是否为相对布局容器,并在子控件为相对布局容器时,触发创建模块,属性指定模块和子控件生成模块重复创建相对布局容器及其子控件,直到相对布局容器内的所有子控件均为普通控件。
[0008]本发明的实施方式还提供了一种用户界面控件的控制系统,包含:监听模块和修改模块;监听模块用于获取预设操作事件;修改模块用于根据获取的预设操作,修改相对布局容器中响应该预设操作的子控件的特有属性;其中,用户界面控件采用以上所描述的用户界面控件的布局系统进行布局。
[0009]本发明的实施方式相对于现有技术而言,通过创建一个相对布局容器,应用所创建的相对布局容器盛放多个不同类型或尺寸的子控件,可以将不同尺寸或者类型的子控件通过布局排布逐一生成,大幅简略了在场景中创建不规则尺寸3D控件的繁琐过程。为相对布局容器指定子控件的属性,生成子控件,从而使子控件的生成方式较为简单,而且有利于对子控件的控制和修改,避免重复开发用户界面控件时所引起的差错。另外,如果子控件为相对布局容器,则继续为相对布局容器指定子控件的属性,生成子控件,直到相对布局容器内的所有子控件均为普通控件。因此,多个不同尺寸或者类型的子控件之间可以相互嵌套,从而能够快速的实现不同规则的UI界面,以满足各种产品对子控件排布的不同需求。
[0010]另外,在为相对布局容器指定子控件的属性的步骤中,包含以下子步骤:为相对布局容器指定子控件的类型,并自动为子控件编号;为子控件指定位置的参考控件;设置子控件相对于参考控件的位置偏移量和尺寸。通过上述方法,利用编号对与之相对应的子控件进行控制或修改,使得对各子控件的控制或修改较为简单、准确且不易出错。通过这种方式对子控件进行布局,可以简略在场景中创建不同规则子控件的繁琐过程,有利于对场景中UI界面的整体以及单个子控件的控制和修改,大大提高了开发此虚拟现实应用的图形引擎的可复用性。
[0011]另外,在为子控件指定位置的参考控件的步骤中,如果子控件为相对布局容器的第一个子控件,则指定相对布局容器为参考控件;在设置子控件相对于参考控件的位置偏移量的步骤中,位置偏移量为相对于参考控件的位置的偏移第一预设距离。通过这种方式对子控件进行布局,使得子控件的布局方式更加简单易于实现,且易于开发人员修改和二次开发,可以提高子控件的创建效率。
[0012]另外,在为子控件指定位置的参考控件的步骤中,如果子控件并非相对布局容器的第一个子控件,则指定与子控件位于同一相对布局容器的其他子控件为参考控件;在设置子控件相对于参考控件的位置偏移量的步骤中,位置偏移量为相对于参考控件与子控件相距较近的边缘各偏移第二预设距离。通过这种方式对子控件进行布局,使得子控件的布局方式更加简单易于实现,且易于开发人员修改和二次开发,可以提高子控件的创建效率。
[0013]另外,在创建一个相对布局容器的步骤之后,在为相对布局容器指定子控件的属性的步骤之前,还包含以下步骤:在场景中创建一个菜单对象;将菜单对象与相对布局容器绑定,并设置相对布局容器在场景中的位置。从而可以将不同的场景对应于不同的菜单对象,其对应关系简单明了且不易出错,而且相对布局容器的位置关系较为明确。
[0014]另外,在获取预设操作事件的步骤中,相对布局容器获取预设操作事件,并传递给子控件;或者,子控件获取预设操作事件,并传递给相对布局容器;或者,相对布局容器和子控件均获取预设操作事件,并相互传递。可以根据开发人员的需求通过任意一种方式获取预设操作事件,使得获取预设操作事件的方式较为多样化,进而可以满足不同设计者的需求。
【附图说明】
[0015]图1是根据本发明第一实施方式用户界面控件的布局方法的流程图;
[0016]图2是根据本发明第一实施方式子控件为所在相对布局容器中第一个子控件的位置示意图;
[0017]图3是根据本发明第一实施方式子控件不为所在相对布局容器中第一个子控件的位置示意图;
[0018]图4是根据本发明第二实施方式用户界面控件的布局系统的方框图。
【具体实施方式】
[0019]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本申请各权利要求所要求保护的技术方案。
[0020]本发明的第一实施方式涉及一种用户界面控件的布局方法。具体流程如图1所示,包含以下步骤:
[0021]步骤101,创建一个相对布局容器。
[0022]具体地说,可以创建Relative Container类作为相对布局容器,用于盛放多个不同类型、不同尺寸的不同UKUI是User Interface的简称,中文释义为用户界面)子控件,其中所盛放的子控件可以为相对布局容器或者普通控件。
[0023]需要说明的是,相对布局容器盛放的子控件为多个类型和/或尺寸不同的用户界面控件;其中,普通控件包含以下任意一种:规则布局容器、按钮控件、文字控件或图片控件。
[0024]步骤102,在场景中创建一个菜单对象。根据特定场景UI界面的需要,在该场景中创建一个菜单对象。
[0025]步骤103,将菜单对象与相对布局容器绑定,并设置相对布局容器在场景中的位置。其中,相对布局容器在场景中的位置可以根据实际设计的需求设置在UI场景中的任意位置,本实施方式对此不做限制。
[0026]步骤104,为相对布局容器指定子控件的属性。其中,子控件的属性包括但不限于:类型,基准位置,位置偏移量和尺寸。
[0027]首先,可以为相对布局容器指定子控件的类型,并自动为子控件编号。
[0028]对于每个子控件的控制或者修改,可以通过此相对布局容器取得子控件的编号来进行控制或者修改,可以加强UI菜单的管理,且各级子控件的层次较为分明。
[0029]其次,为子控件指定基准位置及其位置偏移量。具体通过判断子控件是否是相对布局容器的第一个子控件来设定参考控件,并以参考控件的位置为基准位置。
[0030]如果子控件是相对布局容器的第一个子控件,则指定相对布局容器为参考控件,并设置位置偏移量为相对于参考控件的位置的偏移第一预设距离。
[0031]具体地说,子控件的位置偏移量是以其父物体(即其所在的相对布局容器)为基准的。如图2所示。假设相对布局容器位置为0,指定相对布局容器的位置O为参考控件的位置,位置偏移量表示为(^€86丨((^,08,00,那么第一个子控件的位置为?((^,08,00。其中,位置偏移量为一预设值,说明子控件相对于参考控件的位置的偏移第一预设距离。第一预设距离可以根据控件的实际布局需求进行设定。
[0032]如果子控件并非相对布局容器的第一个子控件,则指定与子控件位于同一相对布局容器的其他子控件为参考控件,并设置相对于参考控件与该子控件相距较近的边缘各偏移第二预设距离为位置偏移量。这里的子控件的位置偏移是基于其位置参考控件的边缘位置而言的。第二预设距离可以根据控件的实际布局需求进行设定。
[0033]具体地说,如图3所示,如果第一个子控件的位置为P(a,b,c),第二个子控件的位置为Pl(d,e,f),第三个子控件的位置为P2(g,h,i),那么第二个子控件以第一个子控件的位置为基准,第三个子控件则可以以第一个子控件或者笫二个子控件的位置为基准。
[0034]假设为第一个子控件设定的第二预设距离为(131&^2131,&1&2),即第二个子控件的位置相对于第一个子控件的位置的偏移量为(blal,b2bl,ala2)。其中,blal表示相对于第一个子控件的右边缘(图3中X方向)偏移的距离,b2bl表示相对于P第一个子控件的上边缘(图3中Y方向)偏移的距离,a la2表示相对于第一个子控件的外边缘(图3中Z方向)偏移的距离。那么,第二个子控件的位置Pl可以表示为:
[0035]Pl(d,e,f)=P(a,b,c)+sizep(pw/2,ph/2,0)+offset(blal,b2bl,ala2)+sizepl
(plw/2,plh/2,0)o
[0036]式中,pw,ph,plw,plh分别表示第一个控件和第二个子控件的尺寸。
[0037]假设为第三个子控件设定参考控件为第一个子控件,并且第二预设距离为(-c2cl,-dlc2,-d2dl),表示以第一个子控件的左、下、里边缘各偏移一定的距离,第三个子控件的位置P2可表示为:
[0038]P2(g,h,i)=P(a,b,c)_sizep(pw/2,ph/2,0)+offset(-c2cl,-dlc2,_d2dl)-sizep2(p2w/2,p2h/2,0)。
[0039]式中,p2w,p2h分别表示第三个子控件的尺寸。
[0040]最后,设置子控件的尺寸,比如,子控件尺寸可以是一个二维矢量,表示子控件的宽和高。
[0041]在完成子控件的属性设置之后,进入步骤105,生成该子控件。
[0042]步骤106,判断子控件是否为相对布局容器。如果子控件为相对布局容器,则返回执行步骤104,直到相对布局容器内的子控件均为普通控件为止。至此,UI界面创建结束。
[0043]在本实施方式中,通过创建一个相对布局容器,米用所创建的相对布局容器盛放多个不同类型或尺寸的子控件,可以将不同尺寸或者类型的子控件通过布局排布逐一生成。为相对布局容器指定子控件的属性,并生成子控件,从而使子控件的生成方式较为简单,而且有利于对子控件的控制和修改,避免重复开发用户界面控件时所引起的差错。另外,如果子控件为相对布局容器,则继续为相对布局容器指定子控件的属性,生成子控件,直到相对布局容器内的所有子控件均为普通控件。因此,多个不同尺寸或者类型的子控件之间可以相互嵌套,从而能够快速的实现不同规则的UI界面,以满足各种产品对子控件排布的不同需求。
[0044]此外,值得一提的是,在实际基于虚拟现实的应用中,有一套虚拟现实三维图形引擎来对其图形方面的功能进行开发。故而,在该图形引擎中添加相对布局容器类,并实现其功能与基础3D UI控件以及影片数据库的接口,从而实现快速布局不规则的UI界面,大幅简略了在场景中创建不规则尺寸3D控件的的繁琐过程。
[0045]本发明的第二实施方式涉及一种用户界面控件的布局系统,如图4所示,该系统包含创建模块,属性指定模块,子控件生成模块和判断模块。
[0046]创建模块用于创建一个相对布局容器;其中,相对布局容器用于盛放子控件,子控件为相对布局容器或者普通控件。属性指定模块用于为相对布局容器指定子控件的属性。子控件生成模块用于生成子控件。判断模块用于判断子控件是否为相对布局容器,并在子控件为相对布局容器时,触发创建模块,属性指定模块和子控件生成模块重复创建相对布局容器及其子控件,直到相对布局容器内的所有子控件均为普通控件。
[0047]不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
[0048]值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单
J L ο
[0049]本发明第三实施方式涉及一种用户界面控件的控制方法,该方法包含以下步骤:获取预设操作事件;根据获取的预设操作,修改相对布局容器中响应该预设操作的子控件的特有属性;其中,用户界面控件采用第一实施方式所描述的用户界面控件的布局方法进行布局。
[0050]值得一提的是,在获取预设操作事件的步骤中,相对布局容器可以获取预设操作事件,并传递给子控件。或者,子控件可以获取预设操作事件,并传递给相对布局容器。或者,相对布局容器和子控件均可以获取预设操作事件,并相互传递。从而使获取预设操作事件的方式较为多样化,进而可以满足不同设计者的需求。
[0051]本实施方式中,通过获取预设操作事件,并根据获取的预设操作修改复合控件中响应该预设操作的子控件的特有属性;使得对各子控件特有属性的修改和控制方式较为简单,且实际开发或者操作过程中不易出错。
[0052]本发明第四实施方式涉及一种用户界面控件的控制系统,该系统包含:监听模块和修改模块;监听模块用于获取预设操作事件;修改模块用于根据获取的预设操作,修改相对布局容器中响应该预设操作的子控件的特有属性;其中,用户界面控件采用第二实施方式所描述的用户界面控件的布局系统进行布局。
[0053]不难发现,本实施方式为与第三实施方式相对应的系统实施例,本实施方式可与第三实施方式互相配合实施。第三实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第三实施方式中。
[0054]值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单
J L ο
[0055]本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
【主权项】
1.一种用户界面控件的布局方法,其特征在于,包含以下步骤: 创建一个相对布局容器;其中,所述相对布局容器用于盛放子控件,所述子控件为相对布局容器或者普通控件; 为所述相对布局容器指定子控件的属性; 生成所述子控件; 如果所述子控件为相对布局容器,则重复上述步骤,直到相对布局容器内的所有子控件均为普通控件。2.根据权利要求1所述的用户界面控件的布局方法,其特征在于,在所述为所述相对布局容器指定子控件的属性的步骤中,包含以下子步骤: 为所述相对布局容器指定子控件的类型,并自动为所述子控件编号; 为所述子控件指定位置的参考控件; 设置所述子控件相对于参考控件的位置偏移量; 设置所述子控件的尺寸。3.根据权利要求2所述的用户界面控件的布局方法,其特征在于,在所述为所述子控件指定位置的参考控件的步骤中, 如果所述子控件为所述相对布局容器的第一个子控件,则指定所述相对布局容器为参考控件; 在所述设置所述子控件相对于参考控件的位置偏移量的步骤中, 所述位置偏移量为相对于所述参考控件的位置的偏移第一预设距离。4.根据权利要求2所述的用户界面控件的布局方法,其特征在于,在所述为所述子控件指定位置的参考控件的步骤中, 如果所述子控件并非所述相对布局容器的第一个子控件,则指定与所述子控件位于同一相对布局容器的其他子控件为参考控件; 在所述设置所述子控件相对于参考控件的位置偏移量的步骤中, 所述位置偏移量为相对于所述参考控件与所述子控件相距较近的边缘各偏移第二预设距离。5.根据权利要求1所述的用户界面控件的布局方法,其特征在于,在所述创建一个相对布局容器的步骤之后,在所述为所述相对布局容器指定子控件的属性的步骤之前,还包含以下步骤: 在场景中创建一个菜单对象; 将所述菜单对象与所述相对布局容器绑定,并设置所述相对布局容器在所述场景中的位置。6.根据权利要求1所述的用户界面控件的布局方法,其特征在于,所述相对布局容器盛放的子控件为多个类型和/或尺寸不同的用户界面控件; 所述普通控件包含以下任意一种: 规则布局容器、按钮控件、文字控件或图片控件。7.一种用户界面控件的控制方法,其特征在于,包含以下步骤: 获取预设操作事件; 根据所述获取的预设操作,修改所述相对布局容器中响应该预设操作的子控件的特有属性; 其中,所述用户界面控件采用权利要求1至6任意一项所述的用户界面控件的布局方法进行布局。8.根据权利要求7所述的复合用户界面控件的控制方法,其特征在于,在所述获取预设操作事件的步骤中, 所述相对布局容器获取所述预设操作事件,并传递给所述子控件; 或者,所述子控件获取所述预设操作事件,并传递给所述相对布局容器; 或者,所述相对布局容器和所述子控件均获取所述预设操作事件,并相互传递。9.一种用户界面控件的布局系统,其特征在于,包含:创建模块,属性指定模块,子控件生成模块和判断模块; 所述创建模块用于创建一个相对布局容器;其中,所述相对布局容器用于盛放子控件,所述子控件为相对布局容器或者普通控件; 所述属性指定模块用于为所述相对布局容器指定子控件的属性; 所述子控件生成模块用于生成所述子控件; 所述判断模块用于判断所述子控件是否为相对布局容器,并在所述子控件为相对布局容器时,触发所述创建模块,所述属性指定模块和所述子控件生成模块重复创建相对布局容器及其子控件,直到相对布局容器内的所有子控件均为普通控件。10.一种用户界面控件的控制系统,其特征在于,包含:监听模块和修改模块; 所述监听模块用于获取预设操作事件; 所述修改模块用于根据所述获取的预设操作,修改所述相对布局容器中响应该预设操作的子控件的特有属性; 其中,所述用户界面控件采用权利要求9所述的用户界面控件的布局系统进行布局。
【文档编号】G06F9/44GK105912314SQ201511019991
【公开日】2016年8月31日
【申请日】2015年12月28日
【发明人】李珅
【申请人】乐视致新电子科技(天津)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1