我的ViewPager中有两个片段作为标签。这些共享工具栏。单击工具栏上的图标可以访问SettingsActivity。 因此,您可以访问SettingsActivity,而片段A是可见片段,或片段B是可见片段。 当我从SettingsActivity导航回片段时,通过单击工具栏中的向上按钮(actionBar.setDisplayHomeAsUpEnabled(true);),我希望片段可见,当我访问SettingsActivity时我看到了。 没有任何特殊代码(=当前状态),它似乎总是返回到ViewPager中的第一个片段(即最左边的片段)。 向上导航的父活动是MainActivity,我将ViewPager的2个碎片作为选项卡。
答案 0 :(得分: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"));
}
}
答案 1 :(得分:0)
将您的片段保存到Backstack。这样,片段的后退按钮将与为活动运行时相同。
此处:http://developer.android.com/training/implementing-navigation/temporal.html