FlexLayout
webforJ为开发者提供了一种高效且直观的方式来布局他们的各种应用程序和组件——Flex布局。这个工具集允许项以垂直或水平的方式显示。
Flex布局属性
Flex布局的属性可以分为两类:适用于布局内项目的属性和适用于布局本身的属性。Flex布局,或称父元素,是一个可以容纳一个或多个组件的框/容器。Flex布局中的所有内容称为项或子元素。Flex布局提供了一些强大的对齐功能,可以通过容器或项属性来实现。
webforJ的布局组件遵循了CSS的flexbox布局模式。然而,这些工具是为了在Java中充分利用,不需要在提供的Java API方法之外应用CSS。
容器属性
容器属性将应用于组件内的所有元素,而不是布局 本身。它们不会影响父元素的方向或位置——只有子组件会受到影响。
方向
Flex布局将根据开发者选择的方向(水平或垂直)将组件并排添加。当使用构建器时,使用horizontal()
、horizontalReverse()
、vertical()
或verticalReverse()
方法在调用FlexLayout对象的create()
方法时来配置此布局。
或者,使用setDirection()
方法。水平选项为FlexDirection.ROW
(从左到右)或FlexDirection.ROW_REVERSE
(从右到左),垂直选项为FlexDirection.COLUMN
(从上到下)或FlexDirection.COLUMN_REVERSE
(从下到上)。这是通过FlexLayout对象完成的,而不是通过构建器。
显示代码
- Java
- CSS
定位
水平添加的组件也可以进行水平和垂直定位。在创建新的Flex布局时,使用Flex布局构建器的justify()
、align()
和contentAlign()
方法来配置定位。
另外,在实际的FlexLayout对象上,您可以使用setJustifyContent()
方法来水平定位项,使用setAlignment()
方法来配置垂直定位。要修改组件沿交叉轴(水平布局的y轴)周围的区域,请使用setAlignContent()
方法。
setAlignment()
方法控制项目如何在容器中沿交叉轴整体显示,在单行布局中效果显著。
setAlignContent()
方法控制交叉轴周围的空间,仅在布局有多行时生效。
显示代码
- Java
- CSS
换行
为了进一步自定义Flex布局组件,您可以指定当添加的组件不再适合显示时,Flex布局的行为。使用构建器时,使用nowrap()
(默认)、wrap()
和wrapReverse()
方法来配置换行。
或者,如果您的布局已经存在,使用setWrap()
方法来指定当组件无法在一行中适应时的行为。