Skip to content

Instantly share code, notes, and snippets.

@afiqiqmal
Last active April 8, 2018 15:04
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save afiqiqmal/33972c28d9999bdc75b15e597ef47d26 to your computer and use it in GitHub Desktop.
Save afiqiqmal/33972c28d9999bdc75b15e597ef47d26 to your computer and use it in GitHub Desktop.
This Viewpager wrap your content according to size of your view content

Android ViewPager with Wrap Content Behaviour

This extend class for viewpager where wrap your content of viewpager according to size of your view content

public class WrapContentViewPager extends ViewPager {
public WrapContentViewPager(Context context)
{
super(context);
}
public WrapContentViewPager(Context context, AttributeSet attrs)
{
super(context, attrs);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
int height = 0;
for(int i = 0; i < getChildCount(); i++) {
View child = getChildAt(i);
child.measure(widthMeasureSpec, MeasureSpec.makeMeasureSpec(0, MeasureSpec.UNSPECIFIED));
int h = child.getMeasuredHeight();
if(h > height) height = h;
}
heightMeasureSpec = MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY);
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment