问题标签 [android-jetpack-navigation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
426 浏览

android - 将导航组件与 BottomNavigationView 一起使用时禁用动画

将Navigation 组件BottomNavigationView一起使用时,如何禁用/更改渐变动画?

我将它们一起设置的代码(在活动中)如下:

0 投票
4 回答
8982 浏览

android - 使用导航组件将视图模型限定为多个片段(不是活动)

我正在使用导航组件,我希望在几个片段之间共享一个视图模型,但是当我离开片段时它们应该被清除(因此不将它们限制在活动范围内)我正在尝试将一个活动作为多个片段方法。我已经设法使用多个导航主机来实现这一点,并使用 getParentFragment 将片段范围限定为它,但这只会导致更多的问题,必须将片段包装在其他父片段中,失去后退按钮的无缝工作以及其他黑客让应该工作的东西很简单。有没有人知道如何实现这一目标?我想知道我可以使用 getViewModelStore 是否有任何东西,鉴于下面的图像,我想将视图模型的范围限定为 createCardFragment2 并在它之后的任何内容中使用它(addPredictions、editImageFragment 和其他我没有

顺便说一句,我不能只在 mainFragment 视图模型存储上调用 clear,因为这里还有其他不应该被清除的视图模型,我想我想要一种方法来告诉导航主机我知道的父片段应该是什么不是如果我从 mainFragment 或 cardPreviewFragment 导航,这将成为一件事或一种使视图模型新的方法

导航图

0 投票
0 回答
684 浏览

android - 如何(正确)使用导航组件从前台服务打开 Activity/Fragment

在我的用例中,我有一个绑定到Notification.

用户可以杀死应用程序,但前台服务仍然存在。此外,用户可以单击Notification并打开HomeFragment.

我现在的NavGraph样子是这样的:

在此处输入图像描述

目前,当用户单击通知时,我正在使用NavDeepLinkBuilder打开我的:HomeFragment

此代码有效,但我面临一些问题:

由于这种情况,我的问题是:从服务NavDeepLinkBuilder中打开我的正确方法是HomeFragment什么?

谢谢!

0 投票
0 回答
110 浏览

android - 通过 BottomNavigationView 和 Nav Graph 进行片段转换

我在带有bottomNavigationView的android中使用navGraph,我想在单击导航项时更改默认转换。我创建了类似的动作

但它使用默认的淡入/淡出过渡。所以我的问题是如何将导航视图与导航图一起使用,这样我就不会手动调用操作,而是开箱即用地使用它们,就像我在 nav_graph.xml 文件中定义的那样?当我打电话时

它按预期工作(从左到右/从右到左转换),但是当我点击导航项时,会调用淡入/淡出转换

PS,我用的是这个版本

0 投票
3 回答
2381 浏览

android - 如何在片段中动态更改标签?

我想改变“android:label”Fragment

我尝试运行以下代码来更改标签,但它失败了。

0 投票
4 回答
4769 浏览

android - 使用 NavigationComponent 和 BottomNavigationView 隐藏工具栏后退箭头

我正在实现 NavigationComponent 与 BottomNavigationView 相结合的过程中,我注意到工具栏中显示了所有片段目的地的后退箭头,但startDestination导航图中指定的片段目的地除外。

我能够找到的此实现的所有示例都显示出类似的行为。在我看来,隐藏 BottomNavigationView 的每个相关片段的后退箭头似乎是一种更自然的设计,(在工具栏中点击后退箭头以从选项卡 2 导航到选项卡 1 对我来说感觉很奇怪,我以前从未见过这种情况) .

有关示例以及我想要实现的目标,请参见下图。有什么办法可以做到这一点?在此处输入图像描述

0 投票
1 回答
2148 浏览

java - 通过使用安全的 Args 导航,Bundle 变为空

我正在尝试通过使用 java 来使用 android x 的新导航功能,我面临以下问题

我正在使用 Safe Args 从一个目的地传递来自另一个目的地的数据,但我的捆绑包始终为空。我尝试了很多选择。

尝试在没有 Safe Args 的情况下通过参数传递,即使使用 Safe Args 我也遇到错误

0 投票
2 回答
13293 浏览

android - Android导航组件:以编程方式从与家不同的目的地开始?

根据github 示例,我正在尝试实现navigation controller具有多个后堆栈的倍数。但是,该示例为每个选项卡使用不同的导航图,这使事情变得容易。在我的情况下,我需要对所有选项卡使用相同的导航图,但起始目的地与导航图中设置的“主目的地”不同。BottomNavigationView

到目前为止,我已经设法修改NavigationExtensions文件以实现所有选项卡的单个导航图,并且我得到了多个navControllers带有自己的后堆栈,但我无法弄清楚如何在不同的目的地启动导航图。

.navigate在获取 navcontroller 时尝试过使用,但由于它尚未连接,因此无法正常工作。关于如何实现这一目标的任何想法?谢谢你。

0 投票
2 回答
8692 浏览

android - 无法从 xml 文件访问 androidx.navigation.fragment.NavHostFragment

我正在尝试使用带有底部导航视图的 androidx 导航。因此,当我将带有 android:name = "androidx.navigation.fragment.NavHostFragment" 的片段放入 xml 文件中时,它会给我一个错误。我猜那个 xml 没有看到这个库或者这个 Fragment

导航xml文件:

com.android.internal.os.ZygoteInit.main(ZygoteInit.java:802)

0 投票
1 回答
1558 浏览

android - Android导航组件片段过渡具有白色背景

我正在使用 Jetpack 导航库,并且在片段过渡方面存在问题,无论是淡入淡出还是滑动动画,它总是具有白色背景,而不是之前的屏幕内容。

片段 A -> 片段 B,当动画运行时,而不是将背景视为片段 A,它是白色背景。

导航

活动方式

动画文件

任何人都知道如何解决它?