في بعض مسارات المستخدم، يحتاج تطبيقك إلى نقل التركيز بشكل صريح إلى مكوّن معيّن. على سبيل المثال، عندما ينقر المستخدم على زر "بحث"، قد ترغب في وضع التركيز تلقائيًا في حقل إدخال البحث.
استخدام FocusRequester
لطلب التركيز بشكل صريح:
- أنشِئ مثيل
FocusRequesterوتذكَّره:val focusRequester = remember { FocusRequester() }. - أرفِق
FocusRequesterبالدالة المركّبة المستهدَفة باستخدام المُعدِّلfocusRequester. - يمكنك استدعاء
requestFocus()داخل دالة رد اتصال لحدث (مثلonClick) أو نطاق دالة كوروتين.
val focusRequester = remember { FocusRequester() } var text by remember { mutableStateOf("") } TextField( value = text, onValueChange = { text = it }, modifier = Modifier.focusRequester(focusRequester) )
val focusRequester = remember { FocusRequester() } var text by remember { mutableStateOf("") } TextField( value = text, onValueChange = { text = it }, modifier = Modifier.focusRequester(focusRequester) ) Button(onClick = { focusRequester.requestFocus() }) { Text("Request focus on TextField") }
ضبط التركيز الأولي على الشاشة
لتركيز الانتباه على مكوّن معيّن عند ظهور الشاشة لأول مرة،
يمكنك تفعيل requestFocus() داخل LaunchedEffect(Unit):
LaunchedEffect(Unit) {
focusRequester.requestFocus()
}
عند التنقّل بين الحاويات أو العودة من شاشة أخرى،
يمكنك أيضًا إرفاق focusRestorer() بالحاويات الرئيسية
لإعادة التركيز تلقائيًا إلى آخر عنصر فرعي تم التركيز عليه.
لمزيد من المعلومات، يُرجى الاطّلاع على دليل استعادة التركيز.
التطبيقات المقترَحة لك
- ملاحظة: يتم عرض نص الرابط عندما يكون JavaScript غير مفعَّل
- أهداف التركيز
- أهداف التركيز على المجموعات
- استعادة التركيز
- نقل التركيز ومحوه