如何获取viewpager的OnPageChangeListener中的from位置?

时间:2016-12-09 10:33:08

标签: android android-viewpager

在viewpager的OnPageChangeListener onPageSelected中,您拥有当前所选的位置(即当前显示的位置)如何获得滚动的前一个位置到现在的位置?

1 个答案:

答案 0 :(得分:0)

你可以获得fromPosition(即onPageScrolled回调中viewpager被滚动的位置,这个回调方法中的位置值只不过是启动滚动的位置,因此当调用onPageSelected,从onPageScrolled存储的位置将是滚动开始的前一个位置。

ViewPager.OnPageChangeListener listener = new ViewPager.OnPageChangeListener() {
    private int fromPosition = 0;

    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        fromPosition = position;
    }

    @Override
    public void onPageSelected(int position) {
        Log.v("onPageSelected", "scrolled from position " + fromPosition)
    }

    @Override
    public void onPageScrollStateChanged(int state) {

    }
}