ניווט באמצעות 'כתיבה' ב-Wear OS

רכיב הניווט ב-Android Jetpack מספק תמיכה ב-Jetpack פיתוח נייטיב. אפשר לעבור בין תכנים קומפוזביליים בזמן שמנצלים את התשתית של רכיב הניווט לבינה מלאכותית גנרטיבית.

בדף הזה מתוארים ההבדלים בין הניווט ב-Jetpack ב'כתיבה מהירה' ל-Wear מערכת הפעלה.

הגדרה

משתמשים בתלות הבאה בקובץ build.gradle של מודול האפליקציה:

Kotlin

dependencies {
    def wear_compose_version = "1.4.0"
    implementation "androidx.wear.compose:compose-navigation:$wear_compose_version"
}

הוא בשימוש במקום ב-androidx.navigation:navigation-compose ארטיפקט כי הוא מספק הטמעות חלופיות שספציפיות ל-Wear OS.

יצירת בקר ניווט, מארח ותרשים

כדי לנווט באמצעות 'כתיבה' ב-Wear OS, נדרשים אותם שלושה רכיבים שנדרשים אפליקציות שהן לא Wear OS: בקר הניווט, המארח והתרשים.

כדאי להשתמש rememberSwipeDismissableNavController() כדי ליצור מכונה של WearNavigator, יישום של NavController מתאים לאפליקציות ל-Wear OS:

Kotlin

val navController = rememberSwipeDismissableNavController()

NavController הוא ממשק ה-API הראשי שמשמש לניווט באפליקציות לכתיבת הודעות. הוא שולט בניווט בין תכנים קומפוזביליים במארח הניווט, שב-Wear OS SwipeDismissableNavHost

Kotlin

val navController = rememberSwipeDismissableNavController()
SwipeDismissableNavHost(
    navController = navController,
    startDestination = "message_list"
) {
    // TODO: build navigation graph
}

לייק NavHost קומפוזביליות, מתייחס לבקר הניווט, המסלול להתחלה ואת ה-builder של גרף הניווט שמוצג כאן למבדה בסוף.

יש לציין את יעד ההתחלה ביוצר תרשימי הניווט, יחד עם כל שאר היעדים שבהם אפשר לנווט באמצעות הניווט גרפי.

val navController = rememberSwipeDismissableNavController()
SwipeDismissableNavHost(
    navController = navController,
    startDestination = "message_list"
) {
    composable("message_list") {
        MessageList(onMessageClick = { id ->
            navController.navigate("message_detail/$id")
        })
    }
    composable("message_detail/{id}") {
        MessageDetail(id = it.arguments?.getString("id")!!)
    }
}

מידע נוסף על הניווט ב-Jetpack זמין בכתובת מנווטים באמצעות 'כתיבה' או משתמשים במקשי הקיצור הבאים: שיעור ה-Lab של קוד הניווט ב-Jetpack פיתוח נייטיב.