Android Compose – безопасная навигация по типу: сериализатор для класса MainScreen не найденAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Android Compose – безопасная навигация по типу: сериализатор для класса MainScreen не найден

Сообщение Anonymous »

Я пытаюсь использовать безопасную навигацию Android Compose Type, но возникает эта ошибка.
Как ее решить?
Объекты:

Код: Выделить всё

@Serializable
data object MainScreen {

@Serializable
data class MainScreenFirstScreen(val id: Int? = null)
}
Мне нужно перейти к MainScreen, передав идентификатор с другого экрана

Код: Выделить всё

FirstLoginOwnerSixthScreenRoot(
onNavigateToNextScreen = { id ->
navHostController.navigate(
route = MainScreen.MainScreenFirstScreen(
id = id
)
)
График:

Код: Выделить всё

fun NavGraphBuilder.mainScreenOwnerNavGraph() {
navigation(
startDestination = MainScreen.MainScreenFirstScreen()
) {
composable { navBackStackEntry ->
val navHostController = LocalNavHostContoller.current

Text("Main Screen")
}
}
}
Но я получил следующую ошибку:

Код: Выделить всё

kotlinx.serialization.SerializationException: Serializer for class 'MainScreen' is not found.
Please ensure that class is marked as '@Serializable' and that the serialization compiler plugin is applied.
Я делаю подобные вещи в других частях приложения, и больше нигде проблем нет

Подробнее здесь: https://stackoverflow.com/questions/792 ... een-is-not
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»