繁体   English   中英

android viewpager:重置相邻片段的滚动位置

[英]android viewpager: reset adjacent fragment's scroll position

我在活动中使用viewpager和SlidingTabLayout来实现选项卡。 该活动有5个片段。 我要实现的目标是,当用户开始滚动以切换选项卡时,我需要将新片段(由于viewpager缓存而已在内存中,但变得可见)的scrollY重置为某个值。

我尝试使用Fragment.onResume,但它不起作用。 使用ViewPager.OnPageChangeListener.onPageScrollStateChanged,我可以捕获用户何时开始向左/向右滚动,但是如何访问刚刚变得可见的新片段,从而可以重置其滚动位置?

您可以使用ViewPager.PageTransformer获取下一页,然后执行您想要的任何操作,就像这样:

@Override
public void transformPage(View page, float position) {
    page.setScrollY(100);
    ...
}

这个问题和答案将告诉您详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM