Alt alan değiştiriciler

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, Subspace, bir uygulamayı 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.

Doldurma sınırları

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() kullanın.

Konum composable'ları

offset

offset değiştiricisi, composable'ı 3 boyutlu 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() işlevini kullanın.

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, y ve z eksenleri etrafındaki dönüşü belirten eğim, sapma ve yuvarlanma değerlerini kullanarak
  • Dönme eksenini ve etrafında dönmesi gereken derece miktarını temsil eden bir axisAngle kullanarak,Vector3
  • Rotasyonu temsil eden bir Quaternion kullanma.

Composables'ı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, yatay, dikey ve derinlik eksenleri boyunca birleştirilebilir öğenin içeriğini ölçeklendirir.

Composable'lara davranış ekleme

resizable

resizable değiştiricisi etkinleştirildiğinde, kullanıcının öğeyi yeniden boyutlandırmasına olanak tanıyan sürüklenebilir kullanıcı arayüzü kontrolleri gösterilir. Bu işlem, Entity üzerinde ResizableComponent kullanmaya benzer.

movable

movable değiştiricisi etkinleştirildiğinde bileşene, kullanıcının öğeyi 3D alanda taşımasına olanak tanıyan kullanıcı arayüzü kontrolleri eklenir. Bu işlem, Entity üzerinde MovableComponent kullanmaya benzer.

Bir movable düzen düğümü, taşındığında isteğe bağlı olarak hangi düzlem türlerine sabitlenmesi gerektiğini belirtebilir. Örneğin, tablolara tutturulan bir SpatialPanel oluşturmak için:

SpatialPanel(
  modifier.movable(anchorPlaneSemantics = setOf(PlaneSemantic.TABLE))
) {
  // This panel snaps to available planes that are detected as a TABLE.
}

Düzlemlere yapıştırma için uygulamanıza android.permission.SCENE_UNDERSTANDING_COARSE çalışma zamanı izni verilmesi gerekir.

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ısaltmadır. Bu değiştirici, test çerçevelerinin testlerdeki öğeyi bulmasına olanak tanır.