我使用CommonsWare's ViewPager(使用相同的代码)制作一个包含6页的ViewPager,显示当前页面的上一页和下一页。
所以这就是它的外观:(第一张图片),当我在第一页和第四页从屏幕滑出/滑入传真机时,您可以看到。 (第2张图片)
这就是我想要的:(我只想修复第1页和第4页的位置,以便第2页进入第1页)
(第一页的位置为-1,第四页为1)
我只是使用SetTranslationX(float value)
来表示“位置> = 1”和“位置< = -1”
我应该在SetTranslationX(float value)
中添加什么来制作固定观点?
答案 0 :(得分:0)
所以我设法这样做了:
通过查看JazzyViewPager's代码,我将PositionOffsetpixels
用于setTranslationX()
,因此以下是代码的外观:
pager.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int arg0) {
// TODO Auto-generated method stub
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// TODO Auto-generated method stub
OFFSET = positionOffsetPixels;
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO Auto-generated method stub
}
});
并且在pagetransformer中我确实喜欢这样:
if (position <= -1) {
view.setTranslationX(OFFSET);
}else if (position >=1) {
float mTrans = -view.getWidth()-pager.getPageMargin()+OFFSET;
view.setTranslationX(mTrans);
它就像一个魅力......