web-dev-qa-db-fra.com

marge à l'intérieur du texte d'édition dans android

Ma question est: j'ai un EditText et je veux définir une marge à l'intérieur de l'EditText, je veux dire une marge pour le contenu (le texte) du texte d'édition, pas une marge pour la vue que je peux résoudre par cet attribut: Android:layout_marginLeft.

J'ai besoin de laisser un peu d'espace avant et après le texte dans EditText.

J'ai essayé de régler le rembourrage, mais cela ne fonctionne pas!

voici mon code xml:

<FrameLayout
    Android:layout_width="wrap_content"
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_height="wrap_content" 
    Android:layout_marginLeft="2dp">

    <EditText Android:inputType="none"
        Android:textSize="15sp" 
        Android:id="@+id/editText1" 
        Android:scrollHorizontally="true" 
        Android:layout_height="35dp"  
        Android:padding="3dip" 
        Android:singleLine="true"
        Android:layout_width="160dp" 
        Android:layout_weight="0" />

    <ImageView Android:id="@+id/refreshButton" 
        Android:src="@drawable/refresh" 
        Android:layout_height="wrap_content" 
        Android:layout_width="wrap_content"
        Android:layout_gravity="center_vertical|right" />
</FrameLayout>

Quelqu'un peut-il m'aider à faire cela?

Merci d'avance

41
Alaoui Ghita

La variable de remplissage doit être exactement ce que vous recherchez. Vous devriez essayer d'augmenter le remplissage à quelque chose comme 10dp juste pour tester s'il fait quelque chose. Je suppose que parce que l'arrière-plan de EditText est un patch 9, le rembourrage n'agit pas comme vous vous attendez. Lorsque vous définissez le remplissage sur une vue avec un patch 9 comme arrière-plan, tout remplissage intégré au patch 9 est alors ignoré. Donc, si le patch 9 a un remplissage 5dp et que vous définissez un remplissage 3dp dans le xml, vous n'obtiendrez pas de remplissage 8dp, vous obtiendrez 3dp.

67
Bobbake4