Tüm Jetpack Compose Glimmer bileşenleri, gözlüğün dokunmatik alanına dokunma veya dokunmatik alanda kaydırma gibi standart giriş yöntemleriyle çalışacak şekilde tasarlanmıştır. Ayrıca, ekran gözlüğündeki donanıma özgü daha düşük seviyeli giriş komutlarına da duyarlıdır. Jetpack Compose Glimmer bileşenleri, gerekli giriş etkinliklerini otomatik olarak işler.
Kaydırma ve sürükleme gibi standart işlemler için tutarlı bir deneyim sunmak üzere Jetpack Compose Glimmer bileşenlerini kullanın. Ancak özel bileşenler veya özel etkileşim davranışları için Modifier.draggable ya da Modifier.scrollable gibi mevcut Compose API'lerini kullanabilirsiniz.
İşaretçi girişi ve odak
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.
Gezinme davranışı ve sırası
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 kaydırma işlemi yapıldığında 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()
// Prevent focus from exiting the group
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.
Varsayılan: Düğmenin arka plan rengi
GlimmerTheme.colors.surfaceöğesinden alınır. Ana içerik, bu yüzeyin içerik rengini hesaplar.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 opaklığı artırılmış
GlimmerTheme.colors.surfaceolarak ayarlanır.