子空间修饰符

SubspaceModifier 类似于 Subspace 中可组合项的 Compose 修饰符。借助 SubspaceModifier,您可以在 3D 空间中操纵可组合项,从而帮助您定位、旋转 3D 布局节点并为其添加行为。

布局

默认情况下,Subspace 的边界为应用推荐的可视空间范围。在测量子空间组件的布局时,系统会使用这些边界,这与 2D Compose 布局中的边界类似。

填充边界

修饰符 fillMaxSizefillMaxWidthfillMaxHeightfillMaxDepth 可使内容(部分)填充其父元素的边界。 使用填充修饰符有助于应用布局不受 XR 设备显示特性影响的内容。

设置大小和所需的大小

修饰符 sizewidthheightdepth 用于声明内容的首选尺寸。如需声明内容的精确尺寸,请使用 requiredSizerequiredWidthrequiredHeightrequiredDepth。这些尺寸单位必须以 dp 指定;如需将米转换为 dp,请使用 Meter.toDp()

位置可组合项

offset

offset 修饰符可使可组合项在 3D 空间中沿 xyz 轴移动。这些单位必须以 dp 指定;如需将米转换为 dp,请使用 Meter.toDp()

rotate

rotate 修饰符可使指定可组合项在空间中旋转。您可以通过多种方式指定旋转方向和角度:

  • 使用俯仰角、偏航角和横滚角,分别对应围绕 xyz 轴的旋转,
  • 使用 axisAngle,即通过一个 Vector3 表示旋转轴,并指定围绕该轴的旋转角度(以度为单位),
  • 使用 Quaternion 表示旋转。

更改可组合项的外观

alpha

alpha 修饰符用于设置元素及其子元素的不透明度,其中 0f 表示完全透明,1.0f 表示完全不透明。

scale

scale 修饰符沿水平轴、垂直轴和深度轴缩放可组合项的内容。

测试和无障碍功能

semantics

semantics 修饰符会向布局节点添加语义,以便用于测试和无障碍功能。请参阅 Jetpack Compose 中的语义SemanticsModifier

testTag

testTag 修饰符是 SemanticsPropertyReceiver.testTag 的简写形式,可让测试框架在测试中找到相应元素。