59得票9回答
Compose-Navigation:导航前从堆栈中删除先前的组合项

我正在使用compose-navigation(alpha09)来处理组合界面之间的导航。 我希望在移动到下一个目标时删除启动画面(我不希望后退按钮返回到启动画面)。 以下尝试结果不如预期:navHostController.navigate(Route.login.id) { nav...

29得票7回答
如何在Jetpack Compose中通过导航传递对象?

从文档中可以看出,我可以传递字符串、整数等类型。但是如何在导航过程中传递对象呢? 注意:如果我设置参数类型为parcelable,则应用程序会崩溃并显示“java.lang.UnsupportedOperationException: Parcelables don't support de...

25得票2回答
Jetpack Compose NavHost 重新组合可组合多次的问题

我发现在使用Navhost compose导航时,可组合屏幕会被多次重新组合以下示例展示了如何将导航与日志集成以标识函数被调用的次数: internal sealed class Screen(val route: String) { object Splash : Screen("sp...

19得票4回答
如何在Compose NavGraph中的两个或多个Jetpack组件之间共享一个ViewModel?

考虑这个例子。 对于身份验证,我们将使用2个屏幕 - 一个屏幕用于输入电话号码,另一个屏幕用于输入OTP。 这两个屏幕都是使用Jetpack Compose制作的,并且对于NavGraph,我们正在使用Compose Navigation。 另外,我必须提到DI是由Koin处理的。 v...

17得票6回答
JetpackCompose导航中的嵌套图表导致“在调用setGraph之前应设置ViewModelStore”异常。

我正在尝试将 Jetpack Compose 导航应用到我的应用程序中。 我的屏幕:登录/注册屏幕和底部导航栏屏幕(呼叫、聊天、设置)。 我已经发现使用嵌套图是最好的方法。 但是,我一直遇到“在调用 setGraph 之前应该设置 ViewModelStore”异常。然而,我不认为这是正确的异...

17得票2回答
如何使用Jetpack Compose导航到非底部栏屏幕?

我在Compose中有一个应用程序,startDestination设置为带底部导航栏(包含3个项目)和顶部应用栏的scaffold屏幕,我可以通过3个底部导航选项卡进行导航。但是假设我想要点击底部选项卡屏幕中的一个卡片,它应该打开一个没有底部和应用栏的详细信息屏幕 (因为Navhost位于s...

15得票4回答
如何在使用Jetpack Compose + Navigation(无需片段)时处理后退导航。

我试图从引导界面导航到仪表板及更多页面,并在用户访问仪表板后关闭引导页面,但是当我使用“返回操作”时,又回到了引导页面。 这里是示例代码: @AndroidEntryPoint class MainActivity : AppCompatActivity() { override...

15得票4回答
找不到与请求的 NavDeepLinkRequest 匹配的导航目标在导航图 NavGraph 中。

我有一个类似于这样的NavGraph: @Composable fun NavGraph ( navController: NavHostController ) { NavHost( navController = navController, ...

14得票1回答
Jetpack Compose:在嵌套路由中使用底部导航实现嵌套导航。

我的应用程序具有以下结构,因为Route B拥有自己的底部导航栏和自己的NavHost,所以我如何从屏幕C(从选项卡栏打开)导航到Route A? - Nested Route "/onboarding_route", startDestination = 'start' -...

10得票2回答
在Android/Jetpack Compose中手动预填充导航返回栈

在Android/Jetpack Compose中,是否有可能预填充导航后退栈? 我有一个深度链接,可以深入到导航层次结构中,但是在按下返回键时,它会导航到根路由。 例如: Route.Main -> Route.List -> Route.Details(argument: id) ...