web-dev-qa-db-fra.com

EditText - Espace entre le texte et la ligne de EditText

Lorsque j'insère du texte dans mon champ EditText, le texte présente un espace anormal entre lui et la ligne de EditText. Voici un écran d’affichage de mon terminal où vous pouvez voir le trou dont je parle, il est marqué en rouge. enter image description here

J'ai joué avec l'alignement du texte et la gravité, mais sans succès.

Voici le XML:

<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
                xmlns:tools="http://schemas.Android.com/tools"
                Android:layout_width="match_parent"
                Android:layout_height="match_parent"
                Android:paddingBottom="@dimen/activity_vertical_margin"
                Android:paddingLeft="@dimen/activity_horizontal_margin"
                Android:paddingRight="@dimen/activity_horizontal_margin"
                Android:paddingTop="@dimen/activity_vertical_margin"
                tools:context=".MainActivity">

    <TableLayout
        Android:id="@+id/startJourneyLinearLayout"
        Android:layout_width="match_parent"
        Android:layout_height="wrap_content"
        Android:stretchColumns="1">

        <TableRow
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent">

            <TextView
                Android:id="@+id/startLocationTxtView"
                Android:layout_width="wrap_content"
                Android:layout_height="match_parent"
                Android:layout_column="0"
                Android:layout_gravity="start"
                Android:text="@string/startLocation"
                Android:gravity="center"
                Android:textAppearance="?android:attr/textAppearanceLarge"/>

            <EditText
                Android:id="@+id/startLocation"
                Android:layout_width="match_parent"
                Android:layout_height="wrap_content"
                Android:layout_column="1"
                Android:gravity = "bottom"
                Android:hint="Some text"
                Android:inputType="text"/>

            <ImageView
                Android:layout_width="wrap_content"
                Android:layout_height="match_parent"
                Android:layout_column="2"
                Android:src="@drawable/my_ic_location"/>
        </TableRow>

        <TableRow
            Android:layout_width="fill_parent"
            Android:layout_height="fill_parent">

            <TextView
                Android:id="@+id/endLocationTxtView"
                Android:layout_width="wrap_content"
                Android:layout_height="match_parent"
                Android:layout_column="0"
                Android:layout_gravity="start"
                Android:gravity="center"
                Android:text="@string/endLocation"
                Android:textAppearance="?android:attr/textAppearanceLarge"/>

            <EditText
                Android:id="@+id/endLocation"
                Android:layout_width="match_parent"
                Android:layout_height="match_parent"
                Android:layout_column="1"
                Android:inputType="text"/>
        </TableRow>

        <Button
            Android:id="@+id/goButton"
            Android:layout_width="wrap_content"
            Android:layout_height="match_parent"
            Android:layout_gravity="center"
            Android:text="@string/go"/>

    </TableLayout>

</RelativeLayout>

Quelqu'un peut-il comprendre pourquoi cela se produit et m'expliquer comment puis-je résoudre le problème?

--------------- MODIFIER -----------------------

J'ai mis à jour le code XML que j'ai posté dans la question d'origine et le code XML réel que j'ai sur mon application, comme demandé dans un commentaire.

Le premier écran d’affichage (celui ci-dessus, provient d’un appareil réel -> Galaxy S4 sous Android 4.4.4 CyanogenMod) et voici un écran d’affichage de l’émulateur utilisant l’API 19

enter image description here

13
dazito

Pour changer l'écart entre le texte EditText et le résultat inférieur, vous pouvez utiliser Android: paddingBottom

  <EditText
      Android:id="@+id/nameEditText"
      style="@style/DarkEditText"
      Android:layout_width="match_parent"
      Android:layout_height="wrap_content"
      Android:hint="@string/name"
      Android:paddingBottom="20dp"/>

Remplacez paddingBottom valeur selon vos besoins. 

32
Kishan Vaghela

Essayez  

Android:layout_height="wrap_content"

au lieu de  

Android:layout_height="match_parent" sur votre EditText.

1
Karakuri