2013-05-19 87 views
0

幾天前我正在尋找一個edittext實現,裏面有一個「label」用於用戶名輸入。 我從Stackoverflow中找到以下xml代碼。EditText裏面的TextView對齊

<FrameLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_margin="10dp"> 

     <EditText 
      android:id="@+id/username_editText" 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:textSize="15sp" 
      android:hint="Πατήστε εδώ" 
      android:inputType="text" 
      android:maxLength="20" 
      android:paddingLeft="125dp" 
      tools:ignore="HardcodedText" > 

      <requestFocus /> 
     </EditText> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_gravity="center_vertical" 
      android:layout_marginBottom="0dp" 
      android:layout_marginLeft="0dp" 
      android:layout_marginRight="0dp" 
      android:paddingLeft="12dp" 
      android:text="Όνομα χρήστη:" 
      android:textColor="@color/grey" 
      android:textSize="15sp" 
      tools:ignore="HardcodedText" /> 

     </FrameLayout> 

結果是我需要的,除了一個thing.Both的EditText TextView的,並沒有在他們的Y軸對齊,文字的底部不小resolutions.The截圖我從3.7英寸對準了: enter image description here

我畫了一條紅線,你可以看到它們沒有對齊。任何幫助?從你的TextView

 android:layout_gravity="center_vertical" 

+0

我知道它看起來不完全一樣,但你知道'android:hint'屬性? http://developer.android.com/reference/android/widget/TextView.html#attr_android:hint – dmon

+0

是的,我知道它,我已經使用它.TY btw。 – Theodoros80

回答

3

要對齊文本,您需要一個帶佈局參數的Relativelayout:android:layout_alignBaseline適合您的組件。 試試這個,並繼續我更新:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/RelativeLayout1" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_margin="10dp" > 

    <EditText 
     android:id="@+id/username_editText" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentTop="true" 
     android:inputType="text" 
     android:ems="10" 
     android:maxLength="20" 
     android:textSize="15sp" 
     android:hint="Πατήστε εδώ" 
     android:paddingLeft="125dp" > 

     <requestFocus /> 
    </EditText> 

    <TextView 
     android:id="@+id/textView1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignBaseline="@+id/username_editText" 
     android:layout_alignBottom="@+id/username_editText" 
     android:layout_alignParentLeft="true" 
     android:paddingLeft="10dp" 
     android:text="Όνομα χρήστη:" 
     android:text="TextView" /> 

</RelativeLayout> 
+0

好的,我會盡快嘗試,我會通知你。 – Theodoros80

+1

工作就像一個魅力! – Theodoros80

+0

好,很高興幫助你! – Jarvis

0

刪除線。該行使TextView以縱軸爲中心,而EditText不以。這是導致錯位問題的原因。

+0

我會嘗試一下,當然會回覆你。 – Theodoros80