我想在彼此下方显示3个片段。到目前为止,我已经使用了许多解决方案,例如YViewPager和答案,例如Android: Vertical ViewPager。他们的主要问题是没有他们按照我想要的方式工作。我需要显示第一个片段,并在其下显示第二个片段的一部分,并且当用户滚动到下一个片段时,显示第二个片段和第三个片段的某些部分。YViewPager
很棒,直到我添加以下行以显示第二个片段的某些部分:
viewPager.setClipToPadding(false);
viewPager.setCurrentItem(1);
viewPager.setPadding(0,0,0,500);
在那之后,它变成了这样:
凭空出现的空白。
至于告诉我交换运动事件的其他图书馆和黑客:
private MotionEvent swapXY(MotionEvent event) {
float width = getWidth();
float height = getHeight();
float newX = (event.getY() / height) * width;
float newY = (event.getX() / width) * height;
event.setLocation(newX, newY);
return event;
}
并且还要重写
PageTransformer
。在这里,一切都很好,直到我想从第二个片段到第一个片段为止。它想将alpha设置为0以开始转换,但这会导致第三个片段突然消失,如下所示:
好吧,这是我的问题:
是否有没有这些问题就能实现这种观点?
您是否建议其他方法?
先感谢您。
最佳答案
我认为您可以使用RecyclerView和SnapHelper轻松实现上述行为。这是一个链接,您可以在其中找到某些来源的解释https://rubensousa.github.io/2016/08/recyclerviewsnap