2017-09-27 60 views
0

我正在一个非常基本的应用程序显示一些图像和文本卡。它的工作完美,它的中心位置很好,并且它很好地对齐。但是,当我快速滚动/跳动时,登陆的卡可以是当前卡的第三个甚至第四个。我如何才能使用下一张或上一张卡片?

我想限制它,以便当用户向右转时(不管速度如何),它应该只落在一张以前的卡上,如果他/她向左转动,则应该转到下一张即时卡。是否有可能这样做?

+0

我认为你需要某种形式的垂直'ViewPager' – snachmsm

+0

就像滚动的事件,有一扔事件也是如此。使用它。 – Dennis

回答

0

在你的情况下,我认为你应该通过改变投掷速度来解决它, RecyclerView有一个方法,你只需重写它。

float FLING_SPEED = 0.5f; 

@Override 
public boolean fling(int velocityX, int velocityY) 
{ 
    // FLING_SPEED between (0, 1) => slow down, greater 1 => speed up 
    // velocityY for vertical, velocityX for horizontal 
    velocityY *= FLING_SPEED; 
    return super.fling(velocityX, velocityY); 
} 
相关问题