android:gravity / android:layout_Gravity,android:padding / android:layout_margin属性区分

android:gravity / android:layout_Gravity区别:
android:gravity 是设置该view里面的内容相对于该view的位置,例如设置button里面的text相对于view的靠左,居中等位置。

android:layout_gravity 是用来设置该view相对与父view 的位置,例如设置button在layout里面的相对位置:屏幕居中,水平居中等。
在实践中,发现有时会同时使用android:gravity和 android:layout_Gravity:
< TextView
         android:id ="@+id/text_displayed"
         android:gravity ="center"         // 设置文字在TextView的居中位置
         android:visibility ="invisible"
         android:layout_width ="fill_parent"
         android:layout_height ="wrap_content"
         android:layout_gravity ="center" // 设置TextView位置(FrameLayout):屏幕居中
         />
而Java代码中设置android:gravity是极其简单的,setGravity函数搞定了:
//此处相当于布局文件中的Android:gravity属性     
button. setGravity(Gravity.CENTER);


android:padding / android:layout_margin区别:

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


你可能感兴趣的:(android:gravity / android:layout_Gravity,android:padding / android:layout_margin属性区分)