set margin cardview programmatically android code example

Example 1: set layout margin programmatically android

int sizeInDP = 16;

int marginInDp = (int) TypedValue.applyDimension(
            TypedValue.COMPLEX_UNIT_DIP, sizeInDP, getResources()
                    .getDisplayMetrics());
setMargins(view, sizeInDP, sizeInDP, sizeInDP, sizeInDP);


void setMargins (View view, int left, int top, int right, int bottom) {
  if (view.getLayoutParams() instanceof ViewGroup.MarginLayoutParams) {
    ViewGroup.MarginLayoutParams p = (ViewGroup.MarginLayoutParams) view.getLayoutParams();
    p.setMargins(left, top, right, bottom);
    view.requestLayout();
  }
}

Example 2: set cardview margin programmatically

ViewGroup.MarginLayoutParams layoutParams = 
                           (ViewGroup.MarginLayoutParams) myCardView.getLayoutParams();
    layoutParams.setMargins(0, 0, SystemHelper.dpToPx(2), 0);
    myCardView.requestLayout();

Tags:

Java Example