0

請看看下面的XML無法對齊UI項正確

<?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" 
    android:background="#ffffff" > 

    <TextView 
     android:id="@+id/save_txt" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="22dp" 
     android:text="@string/save_to" /> 

    <LinearLayout 
     android:id="@+id/save_location_radio_layout" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:layout_toRightOf="@+id/save_txt" 
     android:layout_marginTop="22dp" 
     android:layout_marginLeft="5dp" 
     android:layout_alignBaseline="@+id/save_txt"> 

     <RadioGroup 
     android:id="@+id/save_selection_group" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 


    <RadioButton 
     android:id="@+id/radio_sd" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:checked="true" 
     android:text="SD" /> 

    <RadioButton 
     android:id="@+id/radio_phone" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Phone" /> 
    </RadioGroup> 
    </LinearLayout> 





    <TextView 
     android:id="@+id/save_name_txt" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/save_txt" 
     android:layout_marginTop="50dp" 
     android:text="@string/save_name" /> 

    <EditText 
     android:id="@+id/save_name_edt" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/save_txt" 
     android:layout_toRightOf="@+id/save_name_txt" 
     android:layout_alignBaseline="@+id/save_name_txt" 
     android:layout_marginLeft="15dp" 
     android:paddingBottom="10dp" 
     android:ems="8" > 

     <requestFocus /> 
    </EditText> 

    <Button 
     android:id="@+id/save_voice_note_button" 
     style="?android:attr/buttonStyleSmall" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/save_txt" 
     android:layout_toRightOf="@+id/save_name_edt" 
     android:layout_alignBaseline="@+id/save_name_edt" 
     android:layout_marginLeft="5dp" 
     android:paddingBottom="10dp" 
     android:text="@string/save" /> 

</RelativeLayout> 

這將生成以下

enter image description here

有2個問題。

  1. 正如你所看到的,RadioButton s的不對齊的右邊「保存到:」 TextView
  2. 這實際上是一個Dialog,當我打開這個窗口,窗口的高度是不夠的。請參考圖片,它只顯示EditTextButton的90%。

我已經盡力糾正這一問題,但仍然沒有好處。我做錯了什麼?

+0

刪除這些行機器人:layout_marginTop = 「22dp」 機器人:layout_marginLeft = 「5DP」 機器人:layout_alignBaseline = 「@ + id/save_txt」 – rajeshwaran

回答

1

要修復對話框高度問題,請將主RelativeLayout的android:layout_height更改爲wrap_content

要對齊單選按鈕與TextView的,更改@+id/save_txt@+id/save_location_radio_layout到:在你的線性佈局

<TextView 
    android:id="@+id/save_txt" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:text="@string/save_to" 
    android:gravity="center_vertical" 
    android:layout_alignTop="@+id/save_location_radio_layout" 
    android:layout_alignBottom="@+id/save_location_radio_layout"/> 

<LinearLayout 
    android:id="@+id/save_location_radio_layout" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:orientation="vertical" 
    android:layout_toRightOf="@+id/save_txt" 
    android:layout_marginTop="22dp" 
    android:layout_marginLeft="5dp"> 
+0

這工作。謝謝! –

0

地方您保存到:文本視圖也是第一線的佈局,並給予的TextView和無線電集團之間的填充..

0
try this out 

<?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" 
    android:background="#ffffff" > 

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="22dp" 
     android:id="@+id/headertop" 
     android:orientation="horizontal" > 

     <TextView 
      android:id="@+id/save_txt" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center" 
      android:text="save_to" /> 

     <LinearLayout 
      android:id="@+id/save_location_radio_layout" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_marginLeft="5dp" 

      android:layout_toRightOf="@+id/save_txt" 
      android:orientation="vertical" > 

      <RadioGroup 
       android:id="@+id/save_selection_group" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:orientation="horizontal" > 

       <RadioButton 
        android:id="@+id/radio_sd" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:checked="true" 
        android:text="SD" /> 

       <RadioButton 
        android:id="@+id/radio_phone" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="Phone" /> 
      </RadioGroup> 
     </LinearLayout> 
    </LinearLayout> 

    <TextView 
     android:id="@+id/save_name_txt" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/headertop" 
     android:layout_marginTop="50dp" 
     android:text="save_name" /> 

    <EditText 
     android:id="@+id/save_name_edt" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/save_name_txt" 
     android:layout_below="@+id/headertop" 
     android:layout_marginLeft="15dp" 
     android:layout_toRightOf="@+id/save_name_txt" 
     android:ems="8" 
     android:paddingBottom="10dp" > 

     <requestFocus /> 
    </EditText> 

    <Button 
     android:id="@+id/save_voice_note_button" 
     style="?android:attr/buttonStyleSmall" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/save_name_edt" 
     android:layout_below="@+id/headertop" 
     android:layout_marginLeft="5dp" 
     android:layout_toRightOf="@+id/save_name_edt" 
     android:paddingBottom="10dp" 
     android:text="save" /> 

</RelativeLayout> 
0

除了上述評論。

您不能確定所有元素都適合對話框,因爲它的大小取決於屏幕尺寸。您應該優化UI,以適應屏幕的大部分環節,並將滾動視圖包裝在RelativeLayout周圍。這將是新的根元素。