sap.m。FlexBox控件为灵活的框布局构建一个容器。VBox控件为垂直灵活的框布局构建容器。VBox是要使用的,因为它只是一个自定义的FlexBox控件。VBox包含项目聚合,继承自FlexBox。HBox控件为水平灵活的框布局构建一个容器。HBox有一个名为LayoutData的集合,它定义了在布局中使用时此控件的布局约束。LayoutData类是类型化类,必须与嵌入式布局相匹配。删除此代码后,应用程序的布局被破坏:两个按钮所在的区域和3DViewer显示的区域混淆:growFactor:确定剩余可分配空间时flex项目的灵活性)。一些影响布局的属性需要在FlexBox控件中设置。可以通过layoutData聚合将附加属性附加到放置在FlexBox中的控件。例如在FlexBox中设置布局方向如下:varoMyFlexbox=newsap.m.FlexBox({items:[newsap.m.Button({text:"Button1"}),newsap.m.Button({text:"Button2"})],direction:"Column"});最终效果:我们也可以通过order属性显式指定按钮的顺序:varoMyFlexbox=newsap.m.FlexBox({items:[newsap.m.Button({text:"Button1",layoutData:newFlexItemData({order:2})}),newsap.m.Button({text:"Button2"})]});上面的代码,虽然Button1先出现,但是layoutData设置的order属性值为2,所以它出现在Button2之后:FlexBox控件是CSS中对灵活框布局的包装。控件呈现器在适当的HTML元素上设置CSS属性(如有必要,包括前缀版本)。实际布局由浏览器完成。FlexBox布局具有子元素的布局方向。默认方向为行,行在阅读方向水平排列。这定义了主轴。这种情况下的水平轴是垂直的。开发人员可以将布局方向属性更改为Column,这将导致垂直主轴和水平交叉轴。
