Android中margin和padding的区别

    padding是站在父view的角度描述问题,它规定它里面的内容必须与这个父view边界的距离。margin则是站在自己的角度描述问题,规定自己和其他(上下左右)的view之间的距离,如果同一级只有一个view,那么它的效果基本上就和padding一样了。即:

android:layout_margint指该控件距离边父控件的边距,

android:padding指该控件内部内容,如文本距离该控件的边距。

    如:当按钮分别设置以上两个属性时,得到的效果是不一样的。

android:paddingLeft="30px":  按钮上设置的内容(例如图片)离按钮左边边界30个像素。

android:layout_marginLeft="30px":  整个按钮离左边设置的内容30个像素

这二个属性是相对的,假设B是A的子控件,设置B的margin和设置A的padding能达到相同的效果。

 

几个概念的区别: 
padding margin:都是边距的含义,关键问题得明白是什么相对什么的边距
padding:是控件的内容相对控件的边缘的边距. 

margin  :是控件边缘相对父空间的边距

 

android:gravity是对该view 内容的限定.

 

比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.该属性就干了这个. 

 

android:layout_gravity 是用来设置该view中的子view相对于父view的位置.

 

比如一个button 在linearlayout里,你想把该button放在靠左,靠右等位置就可以在linearlayout中通过该属性设置

 

posted @ 2012-08-08 15:11  C+养鱼人  阅读(689)  评论(0)    收藏  举报