У меня есть два фрагмента в моем ViewPager как вкладки. Они имеют панель инструментов. Вы попадаете в SettingsActivity, нажимая значок на панели инструментов. Итак, вы можете получить доступ к параметру SettingsActivity, в то время как фрагмент A является видимым, или Fragment B является видимым. Когда я вернусь из параметра SettingsActivity к фрагментам, нажав кнопку «Вверх» на панели инструментов (actionBar.setDisplayHomeAsUpEnabled (true);), я хочу, чтобы фрагмент был видимым, который я видел, когда я обращался к SettingsActivity. Без специального кода (= текущее состояние) он всегда возвращается к первому фрагменту в ViewPager (т. Е. Самый левый). Родительская активность для навигации вверх - это MainActivity, где у меня есть ViewPager с 2 фрагментами в виде вкладок.Назад Навигация к последнему фрагменту
0
A
ответ
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"));
}
}
0
сохранить фрагмент в backstack. Таким образом, кнопка возврата для фрагментов будет работать так же, как и для действий.
Здесь: http://developer.android.com/training/implementing-navigation/temporal.html