有時候咱們想要在展現viewPager的同時就讓它滑動到指定的頁面,咱們能夠用viewPager.setCurrentItem(index)
。
然而這種作法依然會加載position爲0的頁面再跳轉到指定的頁面。
今天發現能夠經過反射來改變viewPager的初始化index,親測6.0有效。
代碼以下:code
//初始化adapter,FileLookUpAdapter繼承自FragmentStatePagerAdapter adapter = new FileLookUpAdapter(getSupportFragmentManager()); Field field = null; try { field = ViewPager.class.getDeclaredField("mRestoredCurItem"); } catch (NoSuchFieldException e) { e.printStackTrace(); } field.setAccessible(true); try { //index 爲咱們想要的第一次就展現的頁面index field.set(viewPager, index); } catch (IllegalAccessException e) { e.printStackTrace(); } //setAdapter viewPager.setAdapter(adapter);