是否有任何方法可以使支持包viewpager以较短的拖动捕捉到下一页?默认的行为似乎是,即使我拖动近75%,当我放开时,页面仍然会快速回到上一页。我想缩短快照阈值,改为使viewpager快照到下一页。
注意这适用于拖动手势。一个挥击手势已经需要更短的手势了。

最佳答案

您可以临时执行此操作,而不必太担心viewpager的内部,只要您想增加目标区域:

private class MyPageChangeListener implements OnPageChangeListener {
    private float mLastPositionOffset = 0f;
    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        if(positionOffset < mLastPositionOffset && positionOffset < 0.9) {
            mViewPager.setCurrentItem(position);
        } else if(positionOffset > mLastPositionOffset && positionOffset > 0.1) {
            mViewPager.setCurrentItem(position+1);
        }
        mLastPositionOffset = positionOffset;
    }
}

07-27 22:25