Un SubspaceModifier
est semblable à un modificateur Compose pour les composables dans un Subspace
. Un SubspaceModifier
vous permet de manipuler des composables dans un espace 3D, ce qui vous aide à positionner et à faire pivoter des nœuds de mise en page 3D, et à leur ajouter des comportements.
Mise en page
Par défaut, un Subspace
est limité par l'espace recommandé pour afficher une application. Ces limites sont utilisées pour mesurer la mise en page de vos composants de sous-espace, comme les limites dans les mises en page Compose 2D.
Limites de remplissage
Les modificateurs fillMaxSize
, fillMaxWidth
, fillMaxHeight
et fillMaxDepth
permettent au contenu de remplir (partiellement) les limites de son parent.
L'utilisation de modificateurs de remplissage permet à la mise en page de votre application de contenir du contenu indépendant des caractéristiques d'affichage de l'appareil XR.
Définir la taille et la taille requise
Les modificateurs size
, width
, height
et depth
déclarent la taille préférée du contenu. Pour déclarer la taille exacte du contenu, utilisez requiredSize
, requiredWidth
, requiredHeight
et requiredDepth
. Ces unités doivent être spécifiées en dp
. Pour convertir des mètres en dp, utilisez Meter.toDp()
.
Positionner les composables
offset
Le modificateur offset
déplace le composable dans l'espace 3D le long des axes x
, y
et z
. Ces unités doivent être spécifiées en dp
. Pour convertir des mètres en dp, utilisez Meter.toDp()
.
rotate
Le modificateur rotate
fait pivoter le composable donné dans l'espace. Vous pouvez spécifier la direction et l'angle de rotation de différentes manières :
- En utilisant le tangage, le lacet et le roulis, qui spécifient la rotation autour des axes
x
,y
etz
respectivement, - Utilisez un
axisAngle
, qui est unVector3
représentant l'axe de rotation et le nombre de degrés de rotation autour de cet axe. - Utilisez un
Quaternion
qui représente la rotation.
Modifier l'apparence des composables
alpha
Le modificateur alpha
définit l'opacité de l'élément et de ses enfants, où 0f
représente la transparence totale et 1.0f
l'opacité totale.
scale
Le modificateur scale
met à l'échelle le contenu du composable le long des axes horizontal, vertical et de profondeur.
Tests et accessibilité
semantics
Le modificateur semantics
ajoute de la sémantique au nœud de mise en page, pour une utilisation dans les tests et l'accessibilité. Consultez Sémantique dans Jetpack Compose et SemanticsModifier
.
testTag
Le modificateur testTag
est une abréviation de SemanticsPropertyReceiver.testTag
, qui permet aux frameworks de test de trouver l'élément dans les tests.