2013-01-14 31 views
2

我試圖創建一種「Buttoned Edit」控件,當EditText和Button控件放在同一行時。我用一個簡單的LinearLayout:如何設置由頂線對齊的EditText和Button的佈局?

<LinearLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 

    <EditText 
     android:id="@+id/editTextFileName" 
     android:layout_width="0dip" 
     android:layout_height="wrap_content" 
     android:layout_weight="1" 
     android:ems="10" 
     android:hint="Database file name" 
     android:inputType="textUri" /> 

    <Button 
     android:id="@+id/buttonFileSelect" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minWidth="46dip" 
     android:text="..." /> 

</LinearLayout> 

問題是編輯框和按鈕上沒有相同的「背線」排列: layout topline spacing

定睛一看: enter image description here

在不同的模擬器我得到不同的間距。

如何使EditText和Button在頂線上始終對齊?

SOLUTION(感謝@steevoo和@Mohamed_AbdAllah):

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" > 

    <Button 
     android:id="@+id/buttonFileSelect" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:minWidth="46dip" 
     android:layout_alignParentRight="true" 
     android:text="..." /> 

    <EditText 
     android:id="@+id/editTextFileName" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:ems="10" 
     android:layout_toLeftOf="@id/buttonFileSelect" 
     android:layout_alignTop="@id/buttonFileSelect" 
     android:hint="Database file name" 
     android:inputType="textUri" /> 

</RelativeLayout> 
+0

嘗試使用相對佈局有頂端 – steevoo

回答

2

嘗試使用RelativeLayout來代替,而android:layout_alignTop對準ButtonEditText的頂部。此外,你可以給他們相同的固定高度(46dip),但這可能會導致文本被剪輯在EditText

+0

謝謝!我更新了我的問題以包含解決方案 – Andrew