我不能爲我的生活弄清楚這一點。我試圖佈局如下(垂直):Android佈局問題
ImageView的(填充所有可用空間) 的TextView(以根據需要垂直空間) 的EditText(以根據需要垂直空間) 按鈕按鈕按鈕(等距)
我有以下佈局設置。圖像視圖目前設置爲200dip。這個值應該填充所有可用空間?其他組件應該是第一位的,圖像視圖應該得到剩下的部分。我在這方面搜索了一個例子,還沒有發現任何東西。
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<ImageView android:id="@+id/imgView"
android:layout_width="fill_parent"
android:layout_height="200dip"
android:layout_alignParentTop="true" />
<TextView android:id="@+id/lblDesc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/PhotoDesc"
android:layout_below="@id/imgView" />
<EditText android:id="@+id/edtDesc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/lblDesc" />
<!-- Bottom layout contains the three buttons - Take Photos, Transmit, and Setup. -->
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="horizontal"
android:weightSum="3">
<!-- Take photos button -->
<Button android:id="@+id/btnCamera"
android:gravity="center_vertical|center_horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/TakePhotos" />
<!-- Transmit button -->
<Button android:id="@+id/btnUpload"
android:gravity="center_vertical|center_horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="@string/Upload" />
<!-- Setup button -->
<Button android:id="@+id/btnSetup"
android:gravity="center_vertical|center_horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/Setup"
android:layout_weight="1" />
</LinearLayout>
</RelativeLayout>
太棒了,兩個答案一次!兩者都是正確的,但是關於佈局間隔如何劃分的簡單解釋非常有用。我在Android開發的第二天,我只是沒有得到它!謝謝! – Paul
我不想用兩個額外的細節來解決答案,但既然你喜歡額外的信息,這裏有一個有趣的提示。如果您對LinearLayout的子項使用0dip/weight技術,它將跳過該子項的初始測量階段,並僅依賴於重量測量階段。 (沒有體重的孩子也只能依靠一次傳球。)如果這個孩子實際上是一個需要一些時間來衡量的複雜子層次,這可能是一個重要的優化。 – adamp