2014-09-23 67 views
-1

大家好,我必須在editfield下面添加2個按鈕。我曾嘗試使用relativelayout。但是它並沒有在提及位置下方加上。在相對佈局下的editfield下方放置按鈕

<?xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:fillViewport="true" > 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#E8E8E8" > 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:padding="10dip" > 

<LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.35" 
      android:text="User Name" 
      android:textStyle="bold" /> 

     <EditText 
      android:id="@+id/name" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.55" /> 
    </LinearLayout> 

<LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.35" 
      android:text="Description" 
      android:textStyle="bold" /> 

     <EditText 
      android:id="@+id/des" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.55" /> 
    </LinearLayout> 

<RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@id/des" 
     android:padding="10dip"> 

     <Button 
      android:id="@+id/submit" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:text="Submit" /> 

     <Button 
      android:id="@+id/cancel" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentTop="true" 
      android:layout_toRightOf="@id/submit" 
      android:text="Cancel" /> 


    </RelativeLayout> 
</LinearLayout> 
</RelativeLayout> 

</ScrollView> 

在這裏我想添加這兩個按鈕正好在「des」編輯區下面。在此先感謝

目前它顯示爲enter image description here。但是我希望這兩個按鈕恰好在最後一個編輯區下面,大小相同。

+0

你能解釋一下按鈕位置應該如何?如果可能的話,圖片爲 – 2014-09-23 04:05:18

回答

0

android:layout_below="@id/des"藥物洗脫支架是目前在LinearLayout,如果你想給這樣一來,同RelativeLyout應該是DES存在佈局內給予和他們的父母應該是相對佈局,使用parementers如低於或高於(即,相對於其他部件)

0

你剛纔添加您的相對佈局: layout_gravity寬度WRAP_CONTENT。這樣

<RelativeLayout 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_below="@id/des" android:layout_gravity="right" 
    android:padding="10dip"> 

    <Button 
     android:id="@+id/submit" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:text="Submit" /> 

    <Button 
     android:id="@+id/cancel" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentTop="true" 
     android:layout_toRightOf="@id/submit" 
     android:text="Cancel" /> 


</RelativeLayout> 

輸出的樣子:

enter image description here

0

IST認爲你做錯了就是:滾動型決不會包含相對佈局作爲直接孩子。它使用LinearLayout作爲直接子

使用此代碼:

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:padding="10dip" > 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="5dp" 
      android:orientation="horizontal" > 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.35" 
       android:text="User Name" 
       android:textStyle="bold" /> 

      <EditText 
       android:id="@+id/name" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.55" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="5dp" 
      android:orientation="horizontal" > 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.35" 
       android:text="Description" 
       android:textStyle="bold" /> 

      <EditText 
       android:id="@+id/des" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.55" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_below="@id/des" 
      android:orientation="horizontal" 
      android:padding="10dip" > 

      <Button 
       android:id="@+id/submit" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:text="Submit" /> 

      <Button 
       android:id="@+id/cancel" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="1" 
       android:text="Cancel" /> 
     </LinearLayout> 

    </LinearLayout> 

</ScrollView> 
0

試試這個

<?xml version="1.0" encoding="utf-8"?> 

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:fillViewport="true" > 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="#E8E8E8" > 

<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:padding="10dip" > 

<LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.35" 
      android:text="User Name" 
      android:textStyle="bold" /> 

     <EditText 
      android:id="@+id/name" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.55" /> 
    </LinearLayout> 

<LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="5dp" 
     android:orientation="horizontal" > 

     <TextView 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.35" 
      android:text="Description" 
      android:textStyle="bold" /> 

     <EditText 
      android:id="@+id/des" 
      android:layout_width="0dp" 
      android:layout_height="wrap_content" 
      android:layout_weight="0.55" /> 
    </LinearLayout> 

<RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_below="@id/des" 
     android:padding="10dip"> 

     <Button 
      android:id="@+id/cancel" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentRight="true" 
      android:text="Cancel" /> 

     <Button 
      android:id="@+id/submit" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_toLeftOf="@+id/cancel" 
      android:text="Submit" /> 

    </RelativeLayout> 
</LinearLayout> 
</RelativeLayout> 

</ScrollView> 
0

試試這個: 還有一兩件事,當你想要做這樣的東西,嘗試在圖形佈局看到,在移動元素那要定位你想要的。大多數時候它會像預期的那樣工作,你也可以得到一個地方的想法。

<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:fillViewport="true" > 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:background="#E8E8E8" > 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:orientation="vertical" 
      android:padding="10dip" > 

      <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="5dp" 
       android:orientation="horizontal" > 

       <TextView 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="0.35" 
        android:text="User Name" 
        android:textStyle="bold" /> 

       <EditText 
        android:id="@+id/name" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="0.55" /> 
      </LinearLayout> 

      <LinearLayout 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="5dp" 
       android:orientation="horizontal" > 

       <TextView 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="0.35" 
        android:text="Description" 
        android:textStyle="bold" /> 

       <EditText 
        android:id="@+id/des" 
        android:layout_width="0dp" 
        android:layout_height="wrap_content" 
        android:layout_weight="0.55" /> 
      </LinearLayout> 

      <RelativeLayout 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_below="@id/des" 
       android:padding="10dip" > 

       <Button 
        android:id="@+id/submit" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_centerHorizontal="true" 
        android:layout_centerVertical="true" 
        android:text="Submit" /> 

       <Button 
        android:id="@+id/cancel" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_alignBaseline="@+id/submit" 
        android:layout_alignBottom="@+id/submit" 
        android:layout_alignParentRight="true" 
        android:text="Cancel" /> 
      </RelativeLayout> 
     </LinearLayout> 
    </RelativeLayout> 

</ScrollView> 
0

在你的情況下,它不可能因爲你試圖相對於EditText上一個按鈕,放置在裏面的LinearLayout的地方,你可以相對按鈕地方的LinearLayout但不是它的ChildViews。

嘗試將所有視圖放在單個相對佈局中,並將所有視圖相對於彼此放置。

0
<?xml version="1.0" encoding="utf-8"?> 
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:fillViewport="true" > 

<RelativeLayout 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:background="#E8E8E8" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:padding="10dip" > 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="5dp" 
      android:orientation="horizontal" > 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.35" 
       android:text="User Name" 
       android:textStyle="bold" /> 

      <EditText 
       android:id="@+id/name" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.55" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginTop="5dp" 
      android:orientation="horizontal" > 

      <TextView 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.35" 
       android:text="Description" 
       android:textStyle="bold" /> 

      <EditText 
       android:id="@+id/des" 
       android:layout_width="0dp" 
       android:layout_height="wrap_content" 
       android:layout_weight="0.55" /> 
     </LinearLayout> 

     <RelativeLayout 
      android:layout_width="match_parent" 
      android:layout_height="match_parent" 
      android:layout_below="@id/des" 
      android:padding="10dip" > 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_centerInParent="true" 
       android:orientation="horizontal" > 

       <Button 
        android:id="@+id/submit" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_marginRight="12dp" 
        android:text="Submit" /> 

       <Button 
        android:id="@+id/cancel" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Cancel" /> 
      </LinearLayout> 
     </RelativeLayout> 
    </LinearLayout> 
</RelativeLayout> 

希望這將解決您的問題