2011-06-08 121 views
7

我想嘗試讓EditText和Button相鄰。我目前有按鈕位於右側的位置,並且編輯文本左對齊,但按鈕則顯示它位於EditText的頂部。我想讓按鈕在EditText結束的地方開始。如何把EditText和Button放在一起?

這就是我現在所擁有的:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#004D79"> 
     <RelativeLayout android:id="@+id/relativeLayout1" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content"> 
     <EditText 
      android:layout_alignParentLeft="true" 
      android:text="EditText" 
      android:layout_marginTop="10dp" 
      android:id="@+id/editText" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent"> 
     </EditText> 
     <Button android:text="Skip" 
     android:id="@+id/skipButton" 
     android:textSize="18sp" 
     android:layout_marginTop="10dp" 
     android:layout_alignParentRight="true" 
     android:layout_height="wrap_content" 
     android:layout_width="80dp"> 
     </Button> 
    </RelativeLayout> 
</LinearLayout> 

我試圖與製作的EditText寬度與一個確切的DP量設置它,但隨後當屏幕翻轉水平存在的EditText差距較大和按鈕。

回答

19

如果你想繼續使用相對佈局,並有編輯文本上去,直到按鈕,你可以將它添加到的EditText XML

android:layout_toLeftOf="@+id/skipButton" 
13

除了使用RelativeLayout的,只需改變你的LinearLayout有android:orientation =「horizo​​ntal」。然後它裏面的所有視圖將被放在一邊。刪除alignParent的東西(那些是相對佈局),並設置editText(我相信你想伸展和填充屏幕)以使layout_weight =「1」。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="horizontal" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:background="#004D79" 
    > 
     <EditText 
      android:layout_alignParentLeft="true" 
      android:text="EditText" 
      android:layout_weight="1" 
      android:id="@+id/editText" 
      android:layout_height="wrap_content" 
      android:layout_width="fill_parent"> 
     </EditText> 
     <Button android:text="Skip" 
     android:id="@+id/skipButton" 
     android:textSize="18dp" 
     android:layout_marginTop="10dp" 
     android:layout_height="wrap_content" 
     android:layout_width="80dp"> 
     </Button> 
</LinearLayout> 
1
<LinearLayout 
     android:id="@+id/measure" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/product_description" 
     android:layout_margin="10dp" 
     android:layout_marginLeft="5dp" 
     android:layout_marginTop="20dp" 
     android:background="#ff669900" 
     android:orientation="horizontal" 
     android:padding="1px" 
     android:textColor="#fff" 
     android:weightSum="2" > 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_gravity="center" 
      android:layout_weight="1" 
      android:ellipsize="marquee" 
      android:focusable="true" 
      android:focusableInTouchMode="true" 
      android:freezesText="true" 
      android:gravity="center" 
      android:marqueeRepeatLimit="marquee_forever" 
      android:padding="5dp" 
      android:scrollHorizontally="true" 
      android:singleLine="true" 
      android:text="IMEI" 
      android:textColor="#fff" 
      android:textSize="15sp" 
      android:textStyle="bold" /> 

     <EditText 
      android:id="@+id/connection_type" 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_gravity="center" 
      android:layout_weight="1" 
      android:background="@color/white" 
      android:gravity="center" 
      android:hint="" 
      android:padding="10dp" 
      android:textColor="#ff669900" 
      android:textSize="15sp" /> 
    </LinearLayout> 

輸出將是這樣的: -

EditText next to TextView

可能,這將幫助,您可以更改的TextView到按鈕或改變位置全部是由你。