التركيز في Glimmer من Jetpack Compose

أجهزة XR المشمولة
تساعدك هذه الإرشادات في إنشاء تجارب لهذه الأنواع من أجهزة XR.
نظّارة ذكية

تم تصميم جميع مكوّنات Glimmer في Jetpack Compose للعمل مع أساليب الإدخال العادية، مثل النقر أو التمرير السريع على لوحة اللمس في النظّارة الذكية، مع الاستجابة أيضًا لأوامر الإدخال ذات المستوى الأدنى الخاصة بالأجهزة في النظّارة الذكية. تتعامل مكوّنات Glimmer في Jetpack Compose تلقائيًا مع أحداث الإدخال اللازمة.

بالنسبة إلى الإجراءات العادية، مثل التمرير السريع والسحب، استخدِم مكوّنات Glimmer في Jetpack Compose لتقديم تجربة متّسقة. ومع ذلك، بالنسبة إلى المكوّنات المخصّصة أو سلوكيات التفاعل المخصّصة، يمكنك استخدام واجهات برمجة تطبيقات Compose الحالية، مثل Modifier.draggable أو Modifier.scrollable.

إدخال المؤشر والتركيز

على النظارات المزودة بشاشة، يمكن أن يؤثر إدخال المؤشر في التركيز:

  • النقر: تفاعل مباشر لتفعيل العنصر ينتقل التركيز إلى أحد العناصر عندما يتفاعل معه المستخدم.
  • التمرير سريعًا: يُستخدم للتنقّل والتمرير. تتم ترجمة إيماءات التمرير السريع غير المعالَجة تلقائيًا إلى حركات تركيز، ما يتيح التنقّل السلس في واجهة المستخدم بدون إدخال مباشر باستخدام المؤشر.

تركيز الحركة وتغيير الترتيب أثناء تنقّل المستخدم في تطبيقك

حركة التركيز

في حاوية قابلة للتمرير، ينتقل التركيز باستمرار عند التمرير سريعًا على لوحة اللمس. بالنسبة إلى العناصر المنفصلة، مثل صف من الأزرار، تؤدي كل تمريرة سريعة إلى نقل التركيز إلى عنصر واحد في كل مرة.

ترتيب التركيز

كما هو الحال في Jetpack Compose، تستخدم Jetpack Compose Glimmer البحث عن التركيز الأحادي الأبعاد. لمزيد من المعلومات حول ترتيب التمرير بين العناصر القابلة للتركيز، يُرجى الاطّلاع على تغيير ترتيب التمرير بين العناصر القابلة للتركيز.

لتغيير العنصر الذي يتم التركيز عليه في البداية، يمكنك إضافة Modifier.focusGroup() على المستوى الأعلى وتحديد onEnter focusProperty مخصّص:

Modifier.focusProperties {
    onEnter = {
        initialFocus.requestFocus()
        // Prevent focus from exiting the group
        cancelFocusChange()
    }
}
.focusGroup()

حاويات قابلة للتمرير

للحصول على تجربة مستخدم مثالية، يجب أن تكون الحاويات التي تتضمّن محتوًى قابلاً للتمرير، مثل القوائم، هي المكوّن الرئيسي الوحيد على الشاشة. تجنَّب وضع قائمة قابلة للتمرير مباشرةً فوق أو أسفل عناصر تفاعلية أخرى، مثل الأزرار، وذلك لتجنُّب حدوث أي التباس بشأن التنقّل ولتعزيز حركة التركيز السلسة والمتوقّعة.

حالات التركيز التلقائية

توفّر مكتبة Jetpack Compose Glimmer حالات التركيز التلقائية في جميع المكوّنات التفاعلية، بما في ذلك المساحات والبطاقات وعناصر القوائم، ما يعزّز تقديم ملاحظات مرئية واضحة ومتسقة أثناء تفاعل المستخدم.

الشكل 1. ثلاث حالات تركيز في Glimmer من Jetpack Compose، يتم التمييز بينها باستخدام ملاحظات مرئية مستندة إلى المخطط التفصيلي.
  • تلقائي: يتم استخلاص لون خلفية الزر من GlimmerTheme.colors.surface، ويتم حساب لون المحتوى الرئيسي لهذا السطح.

  • التركيز: يتم زيادة عرض الحدود للإشارة إلى التركيز.

  • التركيز + الضغط: يتم ضبط الخلفية على GlimmerTheme.colors.surface مع زيادة مستوى التعتيم للإشارة إلى الحالة المحدّدة.