android UI界面 weight 用法

android UI界面 weight 用法

:android

-weight用在xml
- 語句爲android:layout_weight=」數字」
- 主要用在LinearLayout佈局中markdown


weight能夠理解爲權重,(控件)按比例佔據空間的意思,這個空間通常來講是線性(橫或者豎)的。

例如,在方向爲horizontal 的LinearLayout中,有個TextView和EditText

代碼爲:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="horizontal" android:layout_width="match_parent" android:layout_height="match_parent">



    <TextView  android:layout_width="0dp" android:layout_height="50dp" android:textSize="25dp" android:gravity="center" android:text="姓名" android:layout_weight="1"/>


    <EditText  android:layout_width="0dp" android:layout_height="50dp" android:hint="請輸入姓名" android:ems="10" android:id="@+id/editText1" android:layout_weight="1" />
</LinearLayout>

代碼相應的圖

**

上圖中,左邊的TextView和右邊的EditText各佔了這一行空間的 1/2,正分別對應了代碼中的android:layout_weight=」1」 (1+1=2,分別佔比例1/2)


同理,若左邊控件android:layout_weight=「4」,則左邊空間佔4/5,右邊控件佔1/5 ,以下圖

這裏寫圖片描述

注意:上述這些都是在全部控件的width設置爲0dp或者match_parent前提下。

若width設置爲具體大於0的數值(例如50dp)或wrap_content。則效果相反,能夠理解爲weight爲權重優先級,數值越小,佔比例越大,即左邊的控件weight爲4時,佔1/5,而右邊的佔4/5

爲了方便直觀,因此在用weight的時候,控件統一width設置爲0dp就行

相關文章
相關標籤/搜索