Android ViewPager填充页面片段之间的边距
Android Market / Google Music似乎可以在ViewPager
中包含的不同片段之间存在某种差距。
任何想法如何完成? 添加边距/填充到实际的片段视图不起作用,因为视图仍然需要占据整个屏幕的宽度。 只有滑动ViewPager时才能看到“间隙”。
在支持包中,您可以使用这些方法:
setPageMargin(int marginPixels) setPageMarginDrawable(Drawable) setPageMarginDrawable(int)
在ViewPager类中。
我不知道为什么这在XML中没有相同的地方:-(
如果你需要使用dip单位,你可以使用这个方法:
public static int convertDip2Pixels(Context context, int dip) { return (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, dip, context.getResources().getDisplayMetrics()); }
希望这可以帮助有ViewPager和页边距的人。
我想有一个ViewPager是一个CardView,并有问题与填充和viewpager页面之间的差距。 setPageMargin根本不适用于我。 我不得不使用以下内容:
int pagerPadding = 16; pager.setClipToPadding(false); pager.setPadding(pagerPadding, 0, pagerPadding, 0);
这使得页面可以非常接近。
viewPager.setPageMargin(dpToPx(10)); // replace 10 with the value you want for margin in dp. public int dpToPx(int dp) { DisplayMetrics displayMetrics = getActivity().getResources().getDisplayMetrics(); return Math.round(dp * (displayMetrics.xdpi / DisplayMetrics.DENSITY_DEFAULT)); }
pager.setClipToPadding(假); pager.setPadding(左,0,右,0); 如果在viewpager中的两个页面之间需要空格,则添加pager.setPageMargin(int);
尝试这个 。
ViewPager viewPager = (ViewPager) findViewById(R.id.h_view_pager); viewPager.setClipToPadding(false); viewPager.setPadding(60, 0, 60, 0); viewPager.setPageMargin(20); ImagePagerAdapter adapter = new ImagePagerAdapter(); viewPager.setOffscreenPageLimit(adapter.getCount()); viewPager.setAdapter(adapter);
尝试这个
viewPager.setClipToPadding(false); viewPager.setOffscreenPageLimit(2); viewPager.setPadding(20, 0, 20, 0);