عندما يتنقّل المستخدمون في واجهة مستخدم Compose باستخدام لوحة مفاتيح خارجية أو لوحة تحكّم أو وحدة تحكّم دوّارة، تشارك الحقول النصية في التنقّل بالتركيز إلى جانب أهداف التركيز الأخرى.
لا يتم تلقائيًا حصر التركيز في حقول النص. لست بحاجة إلى إضافة معالِجات مخصّصة لأحداث المفاتيح (onKeyEvent أو onPreviewKeyEvent) للسماح للمستخدمين بمغادرة حقل نصي. يمكن للمستخدمين دائمًا الخروج من الحقل باستخدام Shift+Tab أو من خلال التنقّل خارج حدود النص باستخدام مفاتيح الاتجاهات.
يمكن استخدام KeyboardOptions لتوفير إجراء بديهي للوحة المفاتيح الافتراضية
يتوافق مع التنقّل باستخدام لوحة المفاتيح الخارجية.
على سبيل المثال، ينقل ImeAction.Next التركيز إلى الهدف التالي.
التنقّل في التركيز أحادي البُعد
في التنقّل أحادي البُعد، يعتمد سلوك مفتاح Tab على lineLimits الذي تم ضبطه في حقل النص:
- حقول النص المكوّنة من سطر واحد (
TextFieldLineLimits.SingleLine) يؤدي الضغط على مفتاح Tab إلى نقل التركيز إلى الهدف التالي في واجهة المستخدم. - حقول النص المتعددة الأسطر (
TextFieldLineLimits.MultiLine()أو تلقائي): يؤدي الضغط على مفتاح Tab إلى إدراج حرف علامة تبويب (\t) في مخزن النص المؤقت بدلاً من نقل التركيز. - التنقّل العكسي (Shift+Tab): يؤدي الضغط على Shift+Tab إلى نقل التركيز إلى الخلف إلى هدف التركيز السابق في كل من حقول النص المكوّنة من سطر واحد ومتعددة الأسطر.
// Single-line text field: Tab advances focus to the next focus target BasicTextField( state = singleLineState, lineLimits = TextFieldLineLimits.SingleLine, modifier = Modifier.fillMaxWidth() ) // Multi-line text field: Tab inserts '\t'; Shift + Tab moves to previous target BasicTextField( state = multiLineState, lineLimits = TextFieldLineLimits.MultiLine(), modifier = Modifier.fillMaxWidth() )
التنقّل في التركيز ثنائي الأبعاد
عند استخدام مفاتيح الأسهم (أو لوحة التحكم)، تؤدي مفاتيح الاتجاهات أولاً إلى تحريك مؤشر النص (علامة الإقحام) داخل حقل النص:
- التنقّل العمودي (للأعلى أو للأسفل):
يؤدي الضغط على مفتاح
Downإلى تحريك المؤشر للأسفل سطرًا تلو الآخر. عندما تصل علامة الإقحام إلى السطر الأخير، يؤدي الضغط على مفتاح السهم المتّجه للأسفل مرة أخرى إلى نقل التركيز إلى هدف التركيز المجاور أسفل حقل النص. يؤدي الضغط على مفتاح السهم المتّجه للأعلى في السطر الأول إلى نقل التركيز إلى هدف التركيز السابق. - التنقّل الأفقي (لليسار / لليمين / للبداية / للنهاية): يؤدي الضغط على مفاتيح الأسهم الأفقية إلى تحريك علامة الإقحام بين الأحرف. عندما تصل علامة الإقحام إلى بداية مخزن النص المؤقت أو نهايته، يؤدي الضغط على مفتاح الاتجاه مرة أخرى إلى نقل التركيز إلى هدف التركيز المجاور في هذا الاتجاه.
حقول النص على Android TV
على Android TV، يمكنك استخدام وحدات التحكّم في لوحة التحكّم بدون لوحة مفاتيح خارجية:
- يؤدي نقل التركيز إلى حقل نصي إلى عرض لوحة المفاتيح الافتراضية على الشاشة تلقائيًا.
- يتنقّل المستخدم بين مفاتيح لوحة المفاتيح الافتراضية باستخدام لوحة التحكّم.
- يؤدي الضغط على زر رجوع إلى إغلاق لوحة المفاتيح الافتراضية مع الحفاظ على التركيز على حقل النص.
- بعد إغلاق لوحة المفاتيح الافتراضية، يؤدي الضغط على مفاتيح الاتجاهات في لوحة التحكم إلى نقل التركيز إلى أهداف التركيز المجاورة على الشاشة.
- يؤدي الضغط على زر الرجوع مرة ثانية إلى تفعيل التنقّل للخلف في النظام العادي.
التطبيقات المقترَحة لك
- ملاحظة: يتم عرض نص الرابط عندما يكون JavaScript غير مفعَّل
- أهداف التركيز
- ترتيب تمرير التركيز
- أهداف التركيز على المجموعات
- اختبار التنقّل باستخدام التركيز