布局优先级

layoutPriority 用于控制父级布局在空间不足或需要分配空间时,优先给予哪些子视图更多空间。

在同一个父视图下,如果多个子视图竞争空间,设置了较高 layoutPriority 的视图将被优先分配更多空间,而较低或未设置的则可能被压缩或裁剪。

参数说明

  • layoutPriority(可选) 一个数字,表示该视图的布局优先级。 数值越大,优先级越高。默认值为 0。支持小数值。

使用场景示例

假设你有一组水平排列的文本视图,在空间受限时希望某些内容尽量显示完整,而其他内容可以被压缩:

1<HStack>
2  <Text layoutPriority={1}>标题</Text>
3  <Text>副标题(可压缩)</Text>
4</HStack>

在这个示例中,"标题" 的视图被设置了较高的布局优先级,因此在空间不足时 "副标题" 会优先被压缩,而 "标题" 会尽可能完整显示。

注意事项

  • layoutPriority 仅在其父视图需要对多个子视图进行空间分配时生效。
  • 若所有子视图都具有相同的优先级,系统将均衡分配空间。
  • 适用于 HStack, VStack, ZStack 等可组合视图布局中存在内容冲突或布局紧缩的场景。

如需控制内容在受限空间下的显示优先顺序,layoutPriority 是非常有效的布局控制工具。通过合理设置优先级,可以提升界面的适应性与可读性。