我在android应用程序中使用android架构组件的NavigationUI和底部导航。我有以下情况
现在问题是在我的导航图中,我的起始片段是一个(通过定义app:startDestination=“@id/fragmentA”),但现在它从活动中弹出。因此,任何时候如果我按下backpress,应用程序都会关闭,而不是返回到上一个片段。例如,假设我从片段B导航到片段C或D,如果我按下后退按钮,我的应用程序将关闭,而不是转到片段B。如果有办法“重新分配”开始目标?
我检查了这个问题的答案,该问题的情况与上述类似,但使用导航选项(NavOptions)不知何故不起作用。还有别的办法吗?下面是我用来弹出片段和添加导航选项的代码
navController.popBackStack()
val navOptions: NavOptions = NavOptions.Builder()
.setPopUpTo(R.id.homeFragment, true)
.build()
navController.navigate(R.id.action_fragmentA_to_fragmentB, null, navOptions)
使用此导航图。希望它能解决你的问题。
<navigation 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:id="@+id/nav_graph"
app:startDestination="@id/fragment_a">
<fragment
android:id="@+id/fragment_a"
tools:layout="@layout/fragment_a">
<action
android:id="@+id/action_a_to_b"
app:destination="@id/fragment_b"
app:popUpTo="@id/fragment_a"
app:popUpToInclusive="true"/>
</fragment>
<fragment
android:id="@+id/fragment_b"
tools:layout="@layout/fragment_b">
<action
android:id="@+id/action_b_to_c"
app:destination="@id/fragment_c"/>
</fragment>
<fragment
android:id="@+id/fragment_c"
tools:layout="@layout/fragment_c">
</fragment>
</navigation>
使用以下行进行导航:
navController.navigate(R.id.action_a_to_b)
navController.navigate(R.id.action_b_to_c)
我正在使用嵌套片段,当我按下时,我面临问题。 流量: 这是我的应用程序的结构。其中C、D、E、F是子片段,未添加到后堆栈中。D包含列表片段,从D中我称为B。但当我从B中按回来时,我想再次使用最后选定位置的D。我在后堆栈中添加了A和B。我怎样才能做到这一点。给我提供一些解决方案。我回忆起D,但选择的位置总是在变化。
我有一个包含框架布局的活动,片段A托管在这里与一起。 此片段A托管了另外两个包含回收器视图的片段——使用< code > fragmentstatepageradar 的片段A1和片段A2。此时,我能够在片段A1和A2中使用< code > getSupportFragmentManager()获得父片段。 单击A1和A2中的回收器视图项会产生另一个片段,比如片段B,它会替换片段A并将其添加到ba
我有一个标签活动。它包含一个包含片段项的listView。我有一个按钮在这些列表项(这是片段),我想当我单击它显示一个弹出窗口。不幸的是,我能看到弹出窗口,我想这是因为列表项的显示太小了。我实际上想在包含列表的活动中看到它。 有什么想法吗? RowinHomeMab是listView中的一个项,它放置在TabActivity中。
如何从堆栈中弹出特定片段,并从片段中删除其他片段?例如,这些是我的片段,我现在在E right know。 A- 想从E回到B,清除C和D。我怎么能做到这一点?
问题内容: 下面是我的AutoIt脚本(UI3_Authentication.au3),用于处理Windows身份验证弹出窗口。 以下是我对上述AutoIt exe文件的Selenium代码调用。 当我运行上述Selenium文件时,它将打开页面并弹出身份验证。但这不是在插入用户名和密码。它等待用户输入。 问题答案: 我解决了 其实这是我的坏事。以前,我的代码是这样的: 我在get()之前添加了a
问题内容: 我遇到的一种情况是,单击链接网页会打开一个弹出窗口。并且在弹出窗口打开之后,焦点位于弹出窗口中,并且主窗口被禁用。而且我无法将控件转移到弹出窗口。请看下面的代码。 我无法将控件从父窗口转移到弹出窗口。我知道以下命令。 但是它没有太大帮助。请帮我。 问题答案: 当我需要使用以下弹出窗口,关闭它并返回主窗口时,这是我使用的代码。当然,出于此答案的目的已对其进行了简化。它维护原始窗口(主窗口