Jetpack Compose Glimmer'da odaklanma

Geçerli XR cihazlar
Bu kılavuz, bu tür XR cihazlar için deneyimler oluşturmanıza yardımcı olur.
AI Glasses

Tüm Jetpack Compose Glimmer bileşenleri, yapay zeka gözlüğünün dokunmatik yüzeyine dokunma veya dokunmatik yüzeyde kaydırma gibi standart giriş yöntemleriyle çalışacak şekilde tasarlanmıştır. Ayrıca, yapay zeka gözlüğü donanımına özgü daha düşük seviyeli giriş komutlarına 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 gözlüklerinde 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.

Odaklanma 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, öngörülebilir 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 üç odak durumu vardır. Bu durumlar, ana hat tabanlı görsel geri bildirim kullanılarak ayırt edilir.
  • 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.