我的 ViewPager 中有两个片段作为选项卡。它们共享一个工具栏。您可以通过单击工具栏上的图标进入 SettingsActivity。因此,您可以在 Fragment A 是可见的,或者 Fragment B 是可见的时访问 SettingsActivity。当我从 SettingsActivity 导航回片段时,通过单击工具栏中的向上按钮 (actionBar.setDisplayHomeAsUpEnabled(true);),我希望片段可见,我在访问 SettingsActivity 时已经可见。没有任何特殊代码(= 当前状态),它似乎总是返回到 ViewPager 中的第一个片段(即最左边的片段)。向上导航的父活动是 MainActivity,其中我有 ViewPager,其中有 2 个片段作为选项卡。
问问题
57 次
2 回答
0
使用状态保存回调来保存 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"));
}
}
于 2016-03-25T22:50:56.153 回答
0
将您的片段保存到后台堆栈。这样,片段的后退按钮将与活动的运行相同。
这里:http: //developer.android.com/training/implementing-navigation/temporal.html
于 2016-03-25T22:57:26.117 回答