Получить позицию ViewPager после поворота на Android

У меня есть ViewPager. Мой FragmentPageAdapter возвращает позицию Viewpager в методе getItem (). Но после поворота экрана метод не возвращает значения. Зачем? Если я правильно понял, каждый раз, когда вы поворачиваете экран, вызывается OnCreateView (), но почему он не возвращает значение больше? Может ли кто-нибудь указать, как это решить? спасибо

Изменить: My FragmentPageAdapter:

public Fragment getItem(int position) { return Fragment_results.newInstance(position); } 

Мой фрагмент:

 public static Fragment_results newInstance(int i) { Fragment_results fragment = new Fragment_results(); fragment.mContent = i +""; return fragment; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.layout_result, null); ((TextView) view.findViewById(R.id.text)).setText(mContent); 

Положению присваивается значение 0 при создании экземпляра ViewPager и всякий раз, когда вы устанавливаете новый адаптер. Когда onCreateView() , вы полностью перестраиваете все приложение. Чтобы вернуться в позицию, вы должны сначала использовать onSavedInstanceState(Bundle savedInstanceState) и сохранить позицию позиции через Bundle.

 @Override protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putInt("pageItem", myViewPager.getCurrentItem()); } 

Затем в onCreate восстановите состояние viewPager следующим образом:

 if (savedInstanceState != null) { myViewPager.setCurrentItem(savedInstanceState.getInt("pageItem", 0)); }