Search code examples
androiduser-interfaceviewpaddingmargin

Difference between a View's Padding and Margin


What is the difference between a View's Margin and Padding?


Solution

  • To help me remember the meaning of padding, I think of a big coat with lots of thick cotton padding. I'm inside my coat, but me and my padded coat are together. We're a unit.

    But to remember margin, I think of, "Hey, give me some margin!" It's the empty space between me and you. Don't come inside my comfort zone -- my margin.

    To make it more clear, here is a picture of padding and margin in a TextView:

    enter image description here

    xml layout for the image above

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="#c5e1b0"
            android:textColor="#000000"
            android:text="TextView margin only"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="#f6c0c0"
            android:textColor="#000000"
            android:text="TextView margin only"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#c5e1b0"
            android:padding="10dp"
            android:textColor="#000000"
            android:text="TextView padding only"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f6c0c0"
            android:padding="10dp"
            android:textColor="#000000"
            android:text="TextView padding only"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="#c5e1b0"
            android:textColor="#000000"
            android:padding="10dp"
            android:text="TextView padding and margin"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="10dp"
            android:background="#f6c0c0"
            android:textColor="#000000"
            android:padding="10dp"
            android:text="TextView padding and margin"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#c5e1b0"
            android:textColor="#000000"
            android:text="TextView no padding no margin"
            android:textSize="20sp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="#f6c0c0"
            android:textColor="#000000"
            android:text="TextView no padding no margin"
            android:textSize="20sp" />
    
    </LinearLayout>
    

    Related