1. 程式人生 > >Android佈局易混餚屬性

Android佈局易混餚屬性

前言

在Android UI開發中經常使用android:layout_gravity和android:gravity;padding以及margin屬性。平常使用中不是很清楚具體的作用,故此記錄一下這些小問題。

1.android:layout_gravity與android:gravity的區別

  1. android:layout_gravity
    代表子元素在父容器中的對齊方式,例如:給Button設定right,它將位於整個父容器的右側。
  2. android:gravity
    代表子元素內部的對齊方式,例如:給Button設定text,再設定gravity屬性為center,文字內容將居中顯示在Button中。

案例:

<?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">

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:layout_gravity="center_horizontal"
        android:textSize="30sp"
        android:text="Hello World!" />

</LinearLayout>

在這裡插入圖片描述

  • 給Button設定android:gravity = “center” 需要配和android:layout_width="match_parent"使用,否則無效。
  • 在父佈局豎直排列時,android:layout_gravity = "center_vertical"無法生效;反之一樣

2.padding與margin的區別

  1. padding
    指距元素內部邊框的距離。
  2. margin
    指該元素與相對元素之間的距離。