إدارة تغييرات إعدادات لوحة المفاتيح القابلة للفصل

يؤدي نظام التشغيل Android إلى تغيير الإعدادات في كل مرة يتم فيها توصيل لوحة مفاتيح بجهاز أو فصلها عنه. لتقديم تجربة مستخدم سلسة وزيادة إنتاجية المستخدمين إلى أقصى حد على الأجهزة ذات الشاشات الكبيرة التي تتضمّن لوحات مفاتيح قابلة للفصل، يجب أن يدير تطبيقك بفعالية تغييرات إعدادات لوحة المفاتيح.

النتائج

يستجيب تطبيقك عند توصيل لوحة مفاتيح خارجية أو فصلها بدون إعادة إنشاء النشاط قيد التشغيل.

التوافق مع الإصدارات

اضبط minSDK مشروعك على المستوى 8 من واجهة برمجة التطبيقات لتنفيذ هذا الإجراء (راجِع View#onConfigurationChanged()).

التبعيات

بلا عُري

منع إعادة إنشاء النشاط عند تغيير لوحة المفاتيح

لمنع إعادة إنشاء نشاطك عند توصيل لوحة مفاتيح قابلة للفصل أو فصلها، أضِف قيمًا ذات صلة بلوحة المفاتيح إلى السمة configChanges في ملف بيان التطبيق، وأضِف طريقة عرض إلى بنية عرض النشاط حتى يتمكّن تطبيقك من الاستماع إلى تغييرات الإعدادات.

‫1. تحديد السمة configChanges

عدِّل العنصر <activity> في بيان التطبيق عن طريق إضافة قيم keyboard|keyboardHidden إلى قائمة التغييرات في الإعدادات المُدارة التي تم إجراؤها سابقًا:

<activity
    ...
    android:configChanges="...|keyboard|keyboardHidden">

‫2- إضافة طريقة عرض فارغة إلى هيكلية طرق العرض

عرِّف طريقة عرض جديدة وأضِف رمز المعالجة داخل طريقة onConfigurationChanged() الخاصة بطريقة العرض:

Kotlin

val v = object : View(this) {
    override fun onConfigurationChanged(newConfig: Configuration?) {
        super.onConfigurationChanged(newConfig)
        // Handler code here.
    }
}

Java

View v = new View(this) {
    @Override
    protected void onConfigurationChanged(Configuration newConfig) {
        super.onConfigurationChanged(newConfig);
        // Handler code here.
    }
};

النقاط الرئيسية

  • android:configChanges: سمة لعنصر <activity> في بيان التطبيق يُعلم النظام بالتغييرات في الإعدادات التي يديرها التطبيق.
  • View#onConfigurationChanged() : طريقة تتفاعل مع نشر إعدادات تطبيق جديدة.

المجموعات التي تتضمّن هذا الدليل

يشكّل هذا الدليل جزءًا من مجموعات &quot;الأدلة السريعة&quot; المنسّقة التي تغطي أهدافًا أوسع نطاقًا لتطوير تطبيقات Android:

تفعيل تطبيقك ليتوافق مع تجربة مستخدم محسَّنة على الأجهزة اللوحية والأجهزة القابلة للطي وأجهزة ChromeOS

هل لديك أسئلة أو ملاحظات؟

يمكنك الانتقال إلى صفحة الأسئلة الشائعة والاطّلاع على الأدلة السريعة أو التواصل معنا وإعلامنا بأفكارك.