android fragmentpageradapter切换不更新,关于android:在FragmentPagerAdapter中更新当前片段...

我有一个带有标签指示器的viewPager。 ViewPager是带有FragmentPagerAdapter的setAdaper。

我对FragmentPagerAdapter的内部工作原理了解甚少。

我注意到即使邻居还不可见,邻居片段也会恢复(称为OnResume)。

我将更新方法放在OnResume中,以为一旦片段是最新的,它将被更新。

广告横幅刷新

我希望在页脚中设置的广告横幅在向左滑动一次或向右滑动一次时进行更新。不重新创建邻居片段(好东西)。但是已经调用了onResume来避免横幅刷新。 loadBannerAd方法位于OnResume()方法中。

如何通过片段内部的方法仅对当前片段调用loadBannerAd()方法?

编辑:我已经知道有关mViewPager.setOnPageChangeListener()。

OnPageChangeListener mOnPageChangeListener = new ViewPager.OnPageChangeListener() {

@Override

public void onPageSelected(int position) {

// this method can be called before the fragment 's onCreateView()

}

....

};

但是,如果尚未创建片段,则存在危险。在Activty中管理片段是否已创建将破坏其目的。

2580738b88cec58fe433af9b36f7e02b.png

您只需使用:

mViewPager.setOnPageChangeListener(new OnPageChangeListener() {

@Override

public void onPageSelected(int index) {

// TODO Auto-generated method stub

}

@Override

public void onPageScrolled(int arg0, float arg1, int arg2) {

// TODO Auto-generated method stub

}

@Override

public void onPageScrollStateChanged(int arg0) {

// TODO Auto-generated method stub

}

})

然后,您可以处理onPageSelected(int index)中发生的情况。

感谢Warpzit,我知道这种方法。 有没有更优雅的东西(我的意思是在片段本身内调用的方法)

@raychenon不,我已经搜索并尝试了所有内容,但这实际上非常优雅。 如果更喜欢您的喜好,则只要调用onPageSelected即可在片段中调用方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值