区别
padding是在控件内部的
margin是在控件外部的
如图所示,红线区域是margin,黑线区域是padding
下面是TextView的各种 padding,margin的使用效果
这里宽高全是wrap_content
<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: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: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: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: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: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: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:text="TextView no padding no margin" android:textSize="20sp" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="#f6c0c0" android:text="TextView no padding no margin" android:textSize="20sp" /> </LinearLayout>
宽高固定大小
<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="350dp" android:layout_height="50dp" android:layout_margin="10dp" android:background="#c5e1b0" android:text="TextView margin only" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:layout_margin="10dp" android:background="#f6c0c0" android:text="TextView margin only" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:background="#c5e1b0" android:padding="10dp" android:text="TextView padding only" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:background="#f6c0c0" android:padding="10dp" android:text="TextView padding only" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:layout_margin="10dp" android:background="#c5e1b0" android:padding="10dp" android:text="TextView padding and margin" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:layout_margin="10dp" android:background="#f6c0c0" android:padding="10dp" android:text="TextView padding and margin" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:background="#c5e1b0" android:text="TextView no padding no margin" android:textSize="20sp" /> <TextView android:layout_width="350dp" android:layout_height="50dp" android:background="#f6c0c0" android:text="TextView no padding no margin" android:textSize="20sp" /> </LinearLayout>
对比效果,和代码。其中的区别大家应该可以看出来了。