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);
}
我认为你需要某种形式的垂直'ViewPager' – snachmsm
就像滚动的事件,有一扔事件也是如此。使用它。 – Dennis