Modifier

相比Jetpack Compose,这里的Modifier实现的简单得多。它只是一个存储了布局所需信息的类。

Modifier.padding(10.scaled)
Modifier.weight(2.0)
Modifier.align { left().middleY() }
Modifier.minSize(60.scaled,40.scaled)
Modifier.size(40.scaled,20.scaled)
Modifier.height(25.scaled)

一些常用用法。也可以连接起来,先后顺序无关。

Modifier.weight(2.0).align { left().middleY() }.minSize(60.scaled,40.scaled)

布局规则

  • size不为NaN:尺寸固定为size
  • sizeAUTO_MIN:尺寸固定为minSize,如果minSizeNaN则尺寸为0.px
  • sizeAUTO或其它NaN:尺寸由父组件Aligner自行决定,一般是尽量填满并按照weight分配。

size表示在Modifier中指定的widthheightminSizeModifier中指定的minWidthminHeight,以及子组件排列后要求的最小尺寸共同决定。

不提供任何限制最大尺寸的选项,因为不常用且会造成很多逻辑冲突。


This site uses Just the Docs, a documentation theme for Jekyll.