Navigation 3 هي مكتبة تنقّل جديدة مصمّمة للعمل مع ميزة "الإنشاء". باستخدام ميزة التنقّل 3، يمكنك التحكّم بشكل كامل في الحزمة الخلفية، كما أنّ الانتقال إلى الوجهات والتنقّل منها هو أمر بسيط مثل إضافة العناصر وإزالتها من قائمة. ويؤدي ذلك إلى إنشاء نظام مرن للتنقّل في التطبيق من خلال توفير ما يلي:
- الاتفاقيات الخاصة بتصميم حزمة الرجوع، حيث يمثّل كل إدخال في حزمة الرجوع المحتوى الذي تنقّل إليه المستخدم
- واجهة مستخدم يتم تعديلها تلقائيًا مع تغييرات الحزمة الخلفية (بما في ذلك الصور المتحركة)
- نطاق للعناصر في الحزمة الخلفية، ما يسمح بالاحتفاظ بالحالة عندما يكون أحد العناصر في الحزمة الخلفية
- نظام تنسيقات تكيُّفية يسمح بعرض وجهات متعددة في الوقت نفسه، ويسمح بالتبديل السلس بين هذه التنسيقات
- آلية للمحتوى للتواصل مع تنسيقه الرئيسي (البيانات الوصفية)
على مستوى عالٍ، يمكنك تنفيذ ميزة "التنقّل 3" بالطرق التالية:
- حدِّد المحتوى الذي يمكن للمستخدمين الانتقال إليه في تطبيقك، مع منح كل محتوى مفتاحًا فريدًا، وأضِف دالة لتحديد هذا المفتاح للمحتوى. راجِع مقالة حلّ مفاتيح التشفير للوصول إلى المحتوى.
- أنشئ حزمة مفاتيح رجوع يتم دفع المفاتيح إليها وإزالتها أثناء تنقّل المستخدمين في تطبيقك. راجِع إنشاء حزمة مفاتيح رجوع.
- استخدِم
NavDisplay
لعرض حزمة التطبيقات التي تم التراجع عنها في تطبيقك. وكلما تغيّرت الحزمة الخلفية، يتم تعديل واجهة المستخدم لعرض المحتوى ذي الصلة. اطّلِع على عرض التسلسل العميق للمحتوى. - عدِّل استراتيجيات المشهد في
NavDisplay
حسب الحاجة لتوفير تصاميم قابلة للتكيّف مع الأنظمة الأساسية المختلفة.
يمكنك الاطّلاع على رمز المصدر الكامل لنظام Navigation 3 على AOSP.
تحسينات على ميزة "التنقّل في Jetpack"
تحسِّن واجهة برمجة التطبيقات Navigation 3 على واجهة برمجة التطبيقات الأصلية Jetpack Navigation API بالطرق التالية:
- يوفّر عملية دمج أبسط مع ميزة "الإنشاء"
- تمنحك إمكانية التحكّم الكامل في الحزمة الخلفية
- يتيح ذلك إنشاء تنسيقات يمكنها قراءة أكثر من وجهة واحدة من الحزمة الخلفية في الوقت نفسه، ما يسمح لها بالتكيّف مع التغييرات في حجم النافذة والمدخلات الأخرى.
يمكنك الاطّلاع على مزيد من المعلومات حول مبادئ Navigation 3 وخيارات تصميم واجهة برمجة التطبيقات في مشاركة المدونة هذه.
عيّنات الرموز البرمجية
يحتوي مستودع الوصفات على أمثلة على كيفية استخدام وحدات تأسيس Navigation 3 لحلّ المشاكل الشائعة في التنقّل.