如何创建没有边距的ViewPager?

时间:2014-07-10 13:20:13

标签: android

使用Android支持库中的ViewPager视图,默认设置一次显示一个页面,每个项目之间有一个较大的边距 - 即,如果您的视图大约是活动宽度的一半,那么空间在任何一方,当你在那里的那个空间中刷下一个。

ViewPagers有一个方法setPageMargin(),它允许你指定一个偏移量来调整页面之间的边距大小,并且我用它来指定一个负边距,以便它将页面拉得更近。但是,显然,您需要拉入这些边距的数量会因屏幕尺寸而异。

所以,我正在寻找一种更聪明的方式:有没有办法告诉ViewPager"我根本不需要任何边距,使我的ViewPager中的视图相互对接"?

谢谢!

1 个答案:

答案 0 :(得分:1)

我不知道是否有更聪明的方式,但如果所有页面都有相同的宽度,那么你的方式应该有效。尝试这样的事情:

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
// getActivity().getWindow... if inside a Fragment
yourViewPager.setPageMargin((yourPageWidth - dm.widthPixels) / 2);