我在 MainActivity
中有一个包含 2 个 fragment (A 和 B)的 viewpager
。在 viewpager
的 fragment 中,我为每个包含项目列表的 fragment 都有一个 recyclerView
。当我单击 fragment viewpager
的项目时,它会显示一个新的 Activity
,上面有一个新的 fragment (C)。但是当我按下工具栏上的后退按钮时,它总是返回到 MainActivity
和 viewpager
的 fragment A,即使我点击 fragment B 的项目也是如此。
在 androidManifest.xml
中,我将 "parentActivity: MainActivity"
添加到新 Activity。如果我不设置它,后退按钮将不会响应。
当我按下后退按钮时,我需要帮助才能返回到正确的 fragment 。
感谢所有的回答。
最佳答案
非常简单。在加载 viewpager 和 fragment 的 Activity 中保留一个索引变量。当您切换到另一个 Activity 时,通过此 Activity 方法执行此操作,并使用
在 viewpager 中使用当前选定页面/fragment 的索引更新该变量getCurrentItem
此方法将返回您可以存储的索引,然后有两个选项供您选择:如果您知道您的 Activity 将从该 Activity 中恢复,那么您可以在 onResume 中编写以下方法:
setCurrentItem
否则您可以选择 startActivityForResult 并实现相同的目的。如果有任何疑问,请告诉我。
关于java - 如何从 Activity 的 fragment 返回到 viewpager 中的 fragment ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54778758/