تشرح هذه الصفحة أفضل الممارسات للتفاعل مع خريطة التنقل في تطبيقك.
استخدِم SupportNavigationFragment
بدلاً من NavigationView
، متى أمكن ذلك.
SupportNavigationFragment
هو حزمة لتسهيل التعامل مع callbacks في NavigationView
دورة الحياة، لذا لا تحتاج إلى إدارة callbacks هذه بنفسك. هذه الطريقة أقل عرضة للخطأ والطريقة المفضلة
استخدام التنقل في التطبيق. عند استخدام SupportNavigationFragment
، احرص على عدم
لاستدعاء NavigationView
حدث من أحداث مراحل النشاط.
في حال استخدام NavigationView
، يجب استخدام الترتيب المتشدد عند استدعاء طرق مراحل النشاط
يستضيف NavigationView
خريطة التنقّل ويتتبّع عن كثب أحداث دورة الحياة
بصفتها أنشطة Android وشظايا، ويتّخذ إجراءات محدّدة عند استدعاء أحداث دورة الحياة
هذه. ينفِّذ NavigationView
عمليات إعداد متعددة.
في NavigationView#onCreate
وNavigationView#onStart
، وعمليات الإزالة في
NavigationView#onStop
وNavigationView#onDestroy
، وكذلك عندما تكون هناك أنشطة
تتم معالجة أحداث مراحل النشاط.
NavigationView
تُستخدَم طرق دورة الحياة بالمعنى نفسه المستخدَم في أنشطة Android
أو أقسامها. على سبيل المثال، onCreate()
من NavigationView
تقريبًا
يجب استدعائها من خلال عمليات معاودة الاتصال بمراحل النشاط من نظام التشغيل Android
نشاط أو جزء. بما أنّ عمليات الاستدعاء في مراحل نشاط NavigationView
تستند إلى
ويتم تشغيلها بنفس ترتيب استدعاءات مراحل نشاط Android،
يجب ترتيب طرق NavigationView هذه. بخلاف ذلك، قد تواجه
تسرُّبًا في الذاكرة وأخطاء في واجهة المستخدم وعدم تعديل الموقع الجغرافي وغيرها من المشاكل.
لمزيد من المعلومات عن مراحل نشاط Android، يُرجى الاطّلاع على مفاهيم دورة حياة النشاط في مستندات مطور برامج Android.
يوضِّح الجدول التالي الحالات التي يجب فيها استدعاء طرق دورة الحياة الأخرى، بعد طرق دورة الحياة المحدّدة:
طريقة رحلة المستخدِم | مكان الاستدعاء في دورة حياة النشاط | تم الاستدعاء بعد ذلك الإجراء |
---|---|---|
onConfigurationChanged()
|
يتمّ استدعاؤه عندما تكون واجهة المستخدم في المقدّمة وتغيّر الإعدادات. | دائمًا بعد onStart()
|
onTrimMemory()
|
يتمّ استدعاؤه عندما يكون النشاط في الخلفية. | بعد onPause() دائمًا
|
onSaveInstance()
|
يتمّ استدعاؤه قبل إتلاف نشاط. | بعد onStop() دائمًا
|
لا تستدعي طرق مراحل النشاط هذه عدة مرات بدون استدعاء
طريقة الإغلاق المقابلة أولاً. بالإضافة إلى ذلك، ضع في اعتبارك أنه إذا
يدير التطبيق نفسه عمليات معاودة الاتصال بمراحل نشاط Android
تتم إضافة NavigationView
إلى الجزء بعد الإنشاء أو البدء،
الطرق المحددة نفسها بترتيب صحيح
تهيئة حزمة تطوير البرامج للتنقل بشكل صحيح.
للحصول على إرشادات إضافية حول استخدام هذه الطرق، يُرجى الاطّلاع على العرض التوضيحي لحزمة تطوير البرامج (SDK) للتنقل التطبيق.
في حال استخدام السمة NavigationView
، يجب استدعاء أحداث مراحل النشاط من النشاط أو الجزء، وليس كليهما.
للحفاظ على الترتيب الصارم لطرق دورة الحياة، استحضر هذه الأحداث من إما استدعاءات مراحل النشاط أو التجزئة التي تتلقى هذه الأحداث بالترتيب. يضمن هذا النهج أن التطبيقات لا تحتاج إلى التنسيق بين أن تؤدي إلى حدوث أجزاء أو أنشطة تؤدي إلى تكرار المكالمات.