android-architecture-navigation 相关问题

导航架构组件为Android应用程序的应用内导航提供了框架。

Android导航组件:如何保存fragment状态

我使用bottomNavigationView和导航组件。请告诉我如何在切换到另一个选项卡并返回到旧选项卡后不破坏片段?例如,我有三个选项卡 - A、B、...

回答 8 投票 0

在Android移动应用程序(Android Studio)的片段中找到一个箭头

我目前正在 Android Studio 中开发一个 Android 移动应用程序,该项目旨在创建一个集中在线或本地玩迷你游戏的应用程序。我的项目正在进行中...

回答 1 投票 0

将 NavHostFragment 包装在 AndroidViewBinding 中时没有 exitAnim 和 popExitAnim

我想首先概述一下我当前的应用程序设置。它利用 Jetpack Compose 并用 AndroidViewBinding 包装 NavController,使我能够采用传统的导航方法,

回答 1 投票 0

JetpackCompose 导航嵌套图导致“ViewModelStore 应在 setGraph 调用之前设置”异常

我正在尝试将 Jetpack Compose 导航应用到我的应用程序中。 我的屏幕:登录/注册屏幕和底部导航栏屏幕(呼叫、聊天、设置)。 我已经发现最好的方法...

回答 7 投票 0

使用带有导航架构组件的底部菜单栏时如何从工具栏中删除后退按钮

我有一个应用程序,它有一个底部菜单栏,用户可以使用它在 4 个主页选项卡之间切换。它工作正常,如下所示。 我遇到的唯一问题是当我

回答 5 投票 0

使用底部导航和导航组件在按钮单击上切换选项卡

我有一个非常简单的应用程序,由三个片段和一个底部导航栏组成,是通过使用 Android Studio 中的“新建项目 -> 底部导航活动”创建的。第一个片段

回答 3 投票 0

片段在屏幕上完全可见后显示/隐藏某些内容 - 导航组件

我有一个具体的场景: 我正在开发一个音乐播放器应用程序,在其中,我使用导航组件在不同片段之间移动(它是一个单一活动应用程序) 所以,我有一个迷你播放器......

回答 1 投票 0

使用导航组件重新加载片段

我正在使用导航组件加载我的片段,如下所示: https://developer.android.com/guide/navigation/navigation-getting-started navController = findNavController(R.id.

回答 3 投票 0

按下 BottomNavigationBar 项目总是会创建一个实例,并将旧的实例保留在 backstack 中

我正在为我的应用程序使用 Android 导航组件和 BottomNavigationBar。 实施 我有四个选项卡,并且为每个选项卡和 1 个导航创建了一个单独的导航图...

回答 1 投票 0

如何获取NavHostFragment

我正在将 Android 的导航架构组件集成到我的应用程序中。我在将数据从活动传递到片段的开头时遇到了一些问题,所以我遵循了这个答案:

回答 6 投票 0

Jetpack Compose:底栏和嵌套导航

我在 Jetpack Compose 应用程序的项目中设置了一个底部栏,有 2 个目的地。我尝试遵循谷歌的示例。 例如,它看起来像这样: @可组合 有趣

回答 1 投票 0

为什么后退按钮默认不起作用

我正在学习 nav_graph 功能并创建了一个新片段(AddNoteFragment)。在导航设计 UI 中进行编辑后,是的,我可以从 NoteFragment 导航到 AddNoteFragment,并且有一个...

回答 3 投票 0

活动深层链接 - IllegalArgumentException:缺少必需的参数并且没有 android:defaultValue

在我的应用程序中,我有以下结构: 在我的应用程序中,我具有以下结构: <!-- AndroidManifest.xml --> <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android"> <application> <activity android:name=".DeepLinkActivity" android:exported="true" android:launchMode="singleInstancePerTask"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:host="myhost" android:path="/mypath" android:scheme="myscheme" /> </intent-filter> </activity> </application> </manifest> <!-- activity_deep_link.xml --> <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent"> <androidx.fragment.app.FragmentContainerView android:id="@+id/navHostFragment" android:name="androidx.navigation.fragment.NavHostFragment" android:layout_width="match_parent" android:layout_height="match_parent" app:defaultNavHost="true" tools:navGraph="@navigation/my_nav_graph" /> </FrameLayout> // DeepLinkActivity.kt class DeepLinkActivity : AppCompatActivity() { private lateinit var binding: ActivityDeepLinkBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) binding = ActivityDeepLinkBinding.inflate(layoutInflater) setContentView(binding.root) setUpNavigationGraph() } private fun setUpNavigationGraph() { val navHostFragment = supportFragmentManager .findFragmentById(binding.navHostFragment.id) as NavHostFragment val navController = navHostFragment.navController val navGraph = navController.navInflater .inflate(R.navigation.my_nav_graph) .apply { this.setStartDestination(R.id.notTheStartDestinationFragment) } val startDestinationArgs = bundleOf( "someRequiredArgumentHere" to false ) navController.setGraph(navGraph, startDestinationArgs) } } 当我通过 ADB (adb shell am start -d myscheme://myhost/mypath) 通过深度链接打开该活动时,该活动正常启动。 但是当我通过 Chrome 应用程序启动它时,应用程序崩溃了: 原因:java.lang.IllegalArgumentException:缺少必需参数“someRequiredArgumentHere”并且没有 android:defaultValue 观察:我正在使用 Safe Args 插件。 我做错了什么以及为什么行为不同? 我刚刚发现为什么在通过浏览器导航时会忽略 startDestinationArgs。 如果我们检查NavController#setGraph(NavGraph, Bundle?)的内部代码,如果没有发生深层链接,NavController#onGraphCreated(Bundle?)只会使用startDestinationArgs。 作为一种解决方法,在设置导航图之前,我只需清除活动的意图(但这可能不是解决该问题的最佳方法)

回答 1 投票 0

未找到 ID 为“androidx.navigation.safeargs”的插件

当我尝试将 Safe Args(Android 导航)添加到我的应用程序时,如下所示 (使用本指南:https://developer.android.com/topic/libraries/architecture/navigation/navigation-pass-data): 申请

回答 13 投票 0

Espresso 检查 AndroidX 导航中下一个片段的内容

我正在使用 Espresso 测试登录功能,只要我检查导航操作是否会将用户带到具有正确 ID 的片段,它就可以正常工作。 @测试 有趣的登录注销(){ ...

回答 1 投票 0

使用 NavController 从 BottonNavigationBar 单击时会重新创建片段

所以我在片段A中有一个GoogleMap,每当我从BottomNavigationBar中选择片段B并再次选择片段A时,地图就会重新初始化。但是,如果我通过 back-pre 返回到片段 A...

回答 1 投票 0

Fragment 未附加到 Activity,如何解决?

我正在使用带有底部导航视图的导航组件。 问题是当我打开应用程序时,所选片段是主片段,然后当我导航到另一个片段(收藏夹)时,您...

回答 1 投票 0

如何在 Android Jetpack Compose 中传递可选布尔参数?

我正在尝试在用户可以从欢迎页面显示欢迎消息时在仪表板上向用户显示欢迎消息。 因此,在仪表板的路线中,我定义了一个可选参数。 访问正常...

回答 1 投票 0

在导航片段中使用片段

代码 主要活动 // MainActivity.kt 类 MainActivity : AppCompatActivity() { 覆盖 fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState)

回答 1 投票 0

如何使用 Dagger Hilt 将导航参数传递到 ViewModel 中?

我有一个由两个列表详细信息片段组成的单一活动应用程序 我的导航功能如下所示: 私人乐趣navigateToDetail(noteId:字符串?,transitionView:视图){ 效价行动 =

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.