SubspaceModifier, Subspace içindeki composable'lar için Compose değiştiricisine benzer. SubspaceModifier, composable'ları 3D uzayda değiştirmenize olanak tanır. Bu sayede 3D düzen düğümlerini konumlandırabilir, döndürebilir ve bunlara davranışlar ekleyebilirsiniz.
Düzen
Varsayılan olarak, bir Subspace, uygulama görüntülemek için önerilen alanla sınırlanır. Bu sınırlar, alt alan bileşenlerinizin düzenini ölçerken kullanılır. Bu işlem, 2D Compose düzenlerindeki sınırlara benzer.
Sınırları doldur
fillMaxSize, fillMaxWidth, fillMaxHeight ve fillMaxDepth değiştiricileri, içeriğin üst öğesinin sınırlarını (kısmen) doldurmasını sağlar.
Doldurma değiştiricileri kullanmak, uygulamanızın XR cihazının ekran özelliklerinden bağımsız içerik düzenlemesine yardımcı olur.
Boyutu ve gerekli boyutu ayarlama
size, width, height ve depth değiştiricileri, içeriğin tercih edilen boyutunu belirtir. İçeriğin tam boyutunu bildirmek için requiredSize, requiredWidth, requiredHeight ve requiredDepth özelliklerini kullanın. Bu birimler dp içinde belirtilmelidir. Metreden dp'ye dönüştürmek için Meter.toDp() işlevini kullanın.
Position composable'ları
offset
offset değiştiricisi, composable'ı 3D uzayda x, y ve z eksenleri boyunca hareket ettirir. Bu birimler dp cinsinden belirtilmelidir. Metreden dp'ye dönüştürmek için Meter.toDp() kullanılmalıdır.
rotate
rotate değiştiricisi, verilen composable'ı uzayda döndürür. Dönme yönünü ve miktarını farklı şekillerde belirtebilirsiniz:
- Sırasıyla
x,yvezeksenleri etrafındaki dönüşü belirten eğim, sapma ve yuvarlanma değerlerini kullanarak - Dönme eksenini ve etrafında dönülmesi gereken derece miktarını temsil eden bir
Vector3olanaxisAnglekullanma, - Rotasyonu temsil eden bir
Quaternionkullanma.
lookAtUser
lookAtUser değiştiricisi, verilen composable'ı uzayda sürekli olarak döndürerek izleyiciye dönük görünmesini sağlar. Benzer bir değiştirici olan billboard, izleyiciye doğru döner ancak içerik dik kalır.
Bu değiştiricilerin kullanılabilmesi için android.permission.HEAD_TRACKING izninin uygulamanıza verilmesi gerekir. Ayrıca, HeadTrackingMode.LAST_KNOWN değerinin ayarlanması için mevcut oturumun yapılandırılması gerekir.
Composable'ların görünümünü değiştirme
alpha
alpha değiştiricisi, öğenin ve alt öğelerinin opaklığını ayarlar. 0f tamamen şeffaf, 1.0f ise tamamen opak anlamına gelir.
scale
scale değiştiricisi, birleştirilebilir öğenin içeriğini yatay, dikey ve derinlik eksenleri boyunca ölçeklendirir.
Test ve erişilebilirlik
semantics
semantics değiştiricisi, test ve erişilebilirlik için kullanılmak üzere düzen düğümüne semantik ekler. Jetpack Compose'da Semantik ve SemanticsModifier başlıklı makaleleri inceleyin.
testTag
testTag değiştiricisi, SemanticsPropertyReceiver.testTag için kısa bir yöntemdir. Bu yöntem, test çerçevelerinin testlerdeki öğeyi bulmasına olanak tanır.