我想在彼此下方显示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以开始转换,但这会导致第三个片段突然消失,如下所示:
好吧,这是我的问题:
在没有这些问题的情况下是否有实现这种观点的方法? 您是否建议其他方法?
谢谢。
答案 0 :(得分:1)
我认为您可以使用RecyclerView和SnapHelper轻松实现上述行为。这是一个链接,您可以在其中找到一些说明,其中包含某些来源https://rubensousa.github.io/2016/08/recyclerviewsnap