這是我的布局代碼:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:text="@string/welcome"
android:id="@+id/TextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</TextView>
<LinearLayout android:id="@+id/LinearLayout"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="bottom">
<EditText android:id="@+id/EditText"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</EditText>
<Button android:text="@string/label_submit_button"
android:id="@+id/Button"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Button>
</LinearLayout>
</LinearLayout>
它現在是左邊這樣,但是我想讓他像右邊這樣的
比較容易的做法就是設置TextView充滿整個高度,但是這會引起按鈕沒有空間或者是輸入框。基本上這個問題是我想要submit button和text entry在底部是一個合適的高度,text view填滿剩下的控件,同樣的在這個水平線性布局裡邊,我想要submit button包含它的內容,text entry來包含剩下的空間。
如果在這個線性布局裡的第一個項目是告知它就是用來填滿這個布局的,沒有給其他項目留空間,我在這個布局裡如何得到一個首先是在這個線性布局裡,填滿除了最低要求的其他項目的項目?
編輯1:
Relative Layouts 確實是答案,謝謝。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView
android:text="@string/welcome"
android:id="@+id/TextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true">
</TextView>
<RelativeLayout
android:id="@+id/InnerRelativeLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true" >
<Button
android:text="@string/label_submit_button"
android:id="@+id/Button"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</Button>
<EditText
android:id="@+id/EditText"
android:layout_width="fill_parent"
android:layout_toLeftOf="@id/Button"
android:layout_height="wrap_content">
</EditText>
</RelativeLayout>
</RelativeLayout>
我想你應該試試relative layout.
如果你使用相對布局來填充整個屏幕,你應該可以使用android:layout_alignParentBottom 來移動按鈕到屏幕的底部。
如果你的屏幕底部的視圖不是以相對布局來顯示的,那麼也許上邊的布局將占據所有的空間。在這種情況下,在這個android布局:以上的布局中,在你的布局文件和剩下的布局位置,首先你應該把這個視圖放在底部。這能夠使按鈕的視圖占據盡可能多的像他需要的空間,剩下的布局可以填滿剩下的所有屏幕。