填充和android之间的区别:引力

时间:2011-07-27 17:25:02

标签: android android-layout android-widget

我正在尝试设计一个屏幕并且无法理解android:layout_gravity和android:padding之间的区别,如果两者都基于父布局对齐视图,那么它们彼此之间有多么不同。请指教。谢谢。

3 个答案:

答案 0 :(得分:2)

Padding(请参阅该链接中的“大小,填充和边距”标题)在视图边缘与其内容之间创建绝对距离(通常以像素为单位)。

Gravity将项目相对于其父项定位:位于中心,左侧,右侧,顶部,底部等,但您无法提供距边缘的绝对距离,例如10个像素,不使用边距(或填充;阅读Android文档以获取有关这两者之间差异的信息)。

答案 1 :(得分:1)

我喜欢将填充视为布局中的一个框,其中将放置内容(对齐重力)。在没有任何填充的情况下,重力将改变内容相对于布局边界的对齐。

答案 2 :(得分:0)

android:padding在当前布局中设置绝对填充值。 android:layout_gravity设置当前布局相对于父级的重力。

<Linearlayout android:id="@+id/L1">
 <Linearlayout android:id="@+id/L2"
     ...
     android:layout_gravity="bottom|left"
     android:padding="5px">
     <TextView android:id="@+id/T1"
         .../>

</Linearlayout>

因此L2对齐L1的左下角和android:padding在布局L2的四个边的每一边设置5px的填充(这会影响L2 = T1的子布局)。