有时候我们使用ViewPager中嵌套Fragment,来实现滑动跳转界面。可是在ViewPager中如果使用FragmentStatePagerAdapter适配器,在滑动到某个页面后,当前页面是之前缓存好的,也就是说从服务器获取的数据并不是最新的,而且左右滑动ViewPager每一个pager,当前的Fragment并没有走任何生命周期,所以如果想从第一个pager滑动到第二个pager后,第二个pager的内容进行刷新,那么就需要用一下方法实现。
1、首先定义一个接口:
public static interface FragmentState{
void fragmentVisible();}
2、在需要被滑动到当前刷新的Fragment实现该接口
public class MyFragment extends Fragment implements FragmentState { ... @override public void fragmentVisible() { //do specific stuff resetDataOrWhatever(); }}
3、在ViewPager中的滑动监听中调用实现的方法即可
mViewPager.setOnPageChangeListener(new OnPageChangeListener() { @Override public void onPageSelected(int position) { if(position == 1) { MyFragment fragment = mViewPager.getAdapter().getItem(1); // call the fragmentVisible method here fragment.fragmentVisible(); } } ...});
點(diǎn)擊查看更多內(nèi)容
為 TA 點(diǎn)贊
評(píng)論
評(píng)論
共同學(xué)習(xí),寫下你的評(píng)論
評(píng)論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開(kāi)微信掃一掃,即可進(jìn)行掃碼打賞哦