【问题标题】:Back Navigation to last Fragment返回导航到最后一个片段
【发布时间】:2016-07-13 16:11:15
【问题描述】:
我的 ViewPager 中有两个片段作为选项卡。它们共享一个工具栏。您可以通过单击工具栏上的图标进入 SettingsActivity。
因此,您可以在 Fragment A 是可见的,或者 Fragment B 是可见的时访问 SettingsActivity。
当我从 SettingsActivity 导航回片段时,通过单击工具栏中的向上按钮 (actionBar.setDisplayHomeAsUpEnabled(true);),我希望片段可见,我在访问 SettingsActivity 时已经可见。
如果没有任何特殊代码(= 当前状态),它似乎总是返回到 ViewPager 中的第一个片段(即最左边的片段)。
向上导航的父 Activity 是 MainActivity,其中我有带有 2 个片段作为选项卡的 ViewPager。
【问题讨论】:
标签:
android
android-fragments
tabs
up-navigation
【解决方案2】:
使用状态保存回调来保存 MainActivity 的状态:
@Override
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt("SELETED_TAB_INDEX", mSelectedTabIndex);
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(savedInstanceState != null) { // so the activity is being restarted
pager.setCurrentItem(savedInstanceState.getInt("SELETED_TAB_INDEX"));
}
}