Jetpack Compose Glimmer'da odaklanma

Uygun XR cihazlar
Bu kılavuz, bu tür XR cihazlar için deneyimler oluşturmanıza yardımcı olur.
Yapay Zeka Gözlükleri

Tüm Jetpack Compose Glimmer bileşenleri, telefonlardaki standart giriş yöntemleriyle (ör. yapay zeka destekli akıllı gözlüğün dokunmatik alanına dokunma veya kaydırma) çalışacak şekilde tasarlanmıştır. Ayrıca, yapay zeka destekli akıllı gözlük donanımına özgü giriş komutlarına (ör. kamera ve ekran düğmeleri) da duyarlıdır. Jetpack Compose Glimmer bileşenleri, gerekli giriş etkinliklerini otomatik olarak işler. Özel bileşenler için belirli etkileşim davranışlarını uygulamak üzere Modifier.draggable veya Modifier.scrollable gibi mevcut Compose API'lerini kullanabilirsiniz.

Ekrana sahip yapay zeka destekli akıllı gözlüklerde işaretçi girişi odağı etkileyebilir:

  • Dokunma: Öğeyi etkinleştirmek için doğrudan etkileşim. Kullanıcı bir öğeyle etkileşime girdiğinde odak bu öğeye taşınır.
  • Kaydırma: Gezinme ve kaydırma için kullanılır. İşlenmemiş kaydırma hareketleri otomatik olarak odak hareketlerine dönüştürülür. Böylece, doğrudan işaretçi girişi olmadan sorunsuz kullanıcı arayüzü gezinmesi sağlanır.

Kullanıcı uygulamanızda gezinirken odak hareketini ve sırasını değiştirme

Odak hareketleri

Kaydırılabilir bir kapsayıcıda, dokunmatik yüzeyde yapılan kaydırma hareketiyle odak sürekli olarak hareket eder. Düğme sırası gibi ayrı öğelerde her kaydırma, odağı birer öğe kaydırır.

Odak sırası

Jetpack Compose Glimmer, Jetpack Compose'da olduğu gibi tek boyutlu odak araması kullanır. Odak geçiş sırası hakkında daha fazla bilgi edinmek için Odak geçiş sırasını değiştirme başlıklı makaleyi inceleyin.

Başlangıçta odaklanan öğeyi değiştirmek için üst düzey bir Modifier.focusGroup() ekleyip özel bir onEnter focusProperty belirtebilirsiniz:

Modifier.focusProperties {
    onEnter = {
        initialFocus.requestFocus()
        cancelFocusChange()
    }
}
.focusGroup()

Kaydırma kapsayıcıları

En iyi kullanıcı deneyimi için listeler gibi kaydırma kapsayıcıları, ekrandaki tek büyük bileşen olmalıdır. Gezinme karışıklığını önlemek ve sorunsuz, tahmin edilebilir odak hareketini desteklemek için kaydırılabilir bir listeyi doğrudan diğer etkileşimli öğelerin (ör. düğmeler) üstüne veya altına yerleştirmeyin.

Varsayılan odaklanma durumları

Jetpack Compose Glimmer, yüzeyler, kartlar ve liste öğeleri dahil olmak üzere etkileşimli bileşenlerinde varsayılan odak durumlarını uygular. Böylece, kullanıcı etkileşimi sırasında tutarlı ve net görsel geri bildirim sağlanır.

Şekil 1. Jetpack Compose Glimmer'da, ana hat tabanlı görsel geri bildirim kullanılarak ayırt edilen üç odak durumu bulunur.
  • Varsayılan: Düğmenin arka plan rengi GlimmerTheme.colors.surface değerinden türetilir, ana içeriği bu yüzeyin içerik rengini hesaplar ve simgeler GlimmerTheme.colors.primary olur.

  • Odaklanılmış: Odaklanmayı belirtmek için kenarlık genişliği artırılır.

  • Odaklanılmış + Basılmış: Arka plan, seçili durumunu belirtmek için GlimmerTheme.colors.surface olarak tam opaklıkta ayarlanır.