We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
在前面一篇Navigation in Android (一)里面 我的View的结构是这样的
我按下后退键,也可以正常运作导航退堆栈
但是我运用到程序里无论我导航了多少次,我按下后退都是 直接消失了
正式项目和demo没太大区别,主要区别在于正式程序套很多层壳(FragmentContainerView)
在Navigation增加NavHostFragment提到了
app:defaultNavHost="true" 属性确保您的 NavHostFragment 会拦截系统返回按钮。请注意,只能有一个默认 NavHost。如果同一布局(例如,双窗格布局)中有多个宿主,请务必仅指定一个默认 NavHost。 我明明是加了啊
主要区别,我在NavHostFragment前面套了好多层FragmentContainerView!
那我把所有父级的FragmentContainerView里面加上app:defaultNavHost="true"行不行?
答案是没有效果!
看来还是要从Fragment的概念再从头看一遍了
这里面差不多到意思了
将导航结构视为一系列层,其中 Activity 作为最外层,封装下面的每一层子 Fragment。每一层都必须有一个主要导航 Fragment。当发生返回事件时,最内层控制导航行为。一旦最内层再也没有可从其弹回的 Fragment 事务,控制权就会回到外面的下一层,此过程会一直重复,直至到达 Activity 为止。
基本上很清楚了,默认情况下就是只管默认最外层的FragmentManager是应用的主要导航,而外层只有一个Fragment,自然一退一下就退到底了
只要调用setPrimaryNavigationFragment就行了。
代码改造类似如下,所有的上层FragmentContainerView都要改造!
加上代码后,一切OK了
The text was updated successfully, but these errors were encountered:
No branches or pull requests
问题的起因
在前面一篇Navigation in Android (一)里面
我的View的结构是这样的
我按下后退键,也可以正常运作导航退堆栈
但是我运用到程序里无论我导航了多少次,我按下后退都是
直接消失了
问题原因
正式项目和demo没太大区别,主要区别在于正式程序套很多层壳(FragmentContainerView)
在Navigation增加NavHostFragment提到了
app:defaultNavHost="true" 属性确保您的 NavHostFragment 会拦截系统返回按钮。请注意,只能有一个默认 NavHost。如果同一布局(例如,双窗格布局)中有多个宿主,请务必仅指定一个默认 NavHost。
我明明是加了啊
主要区别,我在NavHostFragment前面套了好多层FragmentContainerView!
那我把所有父级的FragmentContainerView里面加上app:defaultNavHost="true"行不行?
答案是没有效果!
看来还是要从Fragment的概念再从头看一遍了
这里面差不多到意思了
基本上很清楚了,默认情况下就是只管默认最外层的FragmentManager是应用的主要导航,而外层只有一个Fragment,自然一退一下就退到底了
问题解决
只要调用setPrimaryNavigationFragment就行了。
代码改造类似如下,所有的上层FragmentContainerView都要改造!
加上代码后,一切OK了
The text was updated successfully, but these errors were encountered: