我正在使用ViewPager
和PageAdapter
(来自兼容包v4)在水平列表框中滑动。 问题是我的第一个页面中的第二个框是第二页中的第一个框(在视觉上和概念上)。像这样:
我正在做的方式现在有效。然而,这变得有点奇怪,因为在滑动的中间有一个相同的框出现两次的情况(如图中所示)。
有一种方法可以仅刷“半”页面吗?
修改
这些框是抽象的。实际上每个框都是ListView
,我创建了不同的页面,只是更改了每个ListView
的适配器。
答案 0 :(得分:31)
代码:
@Override
public float getPageWidth(int position) {
float nbPages = 2; // You could display partial pages using a float value
return (1 / nbPages);
}
答案 1 :(得分:2)
是的,将子宽度用作页面的一半。因此,调用下一个孩子的滑动将刷一半页面。祝你好运!
编辑:再次检查你的草图,尝试实现第1,第2,第3 ......作为不同的孩子。 (我预测大部分解决方案,同时假设它将作为GalleryView作出反应)