إنشاء وحدة تحكُّم للتنقّل

وحدة التحكم في التنقل هي أحد المفاهيم الرئيسية في التنقل. وهو يحمل الرسم البياني للتنقل ويعرض الطرق التي تسمح لتطبيقك بالتنقل بين الوجهات في الرسم البياني.

عند استخدام مكوِّن التنقّل، يمكنك إنشاء وحدة تحكُّم في التنقّل باستخدام الفئة NavController. NavController هي واجهة برمجة التطبيقات التنقّل المركزية. فهو يتتبع الوجهات التي زارها المستخدم، ويسمح للمستخدم بالتنقل بين الوجهات. يوضّح هذا الدليل كيفية إنشاء NavController في تطبيقك.

للحصول على معلومات حول كيفية إضافة رسم بياني للتنقّل في NavController، يمكنك الاطّلاع على مقالة تصميم الرسم البياني للتنقّل. توفر دالة NavController بعض الطرق المختلفة للانتقال إلى الوجهات في الرسم البياني الخاص بها. لمزيد من المعلومات، يُرجى الاطّلاع على الانتقال إلى وجهة.

إنشاء

لإنشاء NavController عند استخدام Jetpack Compose، يمكنك طلب الرمز البرمجي rememberNavController():

val navController = rememberNavController()

يجب إنشاء المستوى الأعلى من NavController في التسلسل الهرمي القابل للإنشاء. يجب أن تكون عالية بما فيه الكفاية بحيث يمكن لجميع المواد التي تحتاج إلى الرجوع إليها القيام بذلك.

يتيح لك هذا الإجراء استخدام NavController كمصدر واحد للحقيقة لتعديل المواد المعروضة خارج شاشاتك. يتّبِع ذلك مبادئ رفع الولاية.

المشاهدات

إذا كنت تستخدم إطار عمل واجهة مستخدم طرق العرض، يمكنك استرداد NavController باستخدام إحدى الطرق التالية بناءً على السياق:

كوتلين:

Java:

عادةً ما تحصل على NavHostFragment، ثم يتم استرداد NavController من الجزء. ويوضّح المقتطف التالي ما يلي:

Kotlin

val navHostFragment =
    supportFragmentManager.findFragmentById(R.id.nav_host_fragment) as NavHostFragment
val navController = navHostFragment.navController

Java

NavHostFragment navHostFragment =
    (NavHostFragment) getSupportFragmentManager().findFragmentById(R.id.nav_host_fragment);
NavController navController = navHostFragment.getNavController();

محتوى إضافي للقراءة