Différence entre le rembourrage et la marge d'une vue

Quelle est la différence entre la marge D'une vue et le rembourrage?

520
demandé sur casperOne 2011-01-07 00:11:08

14 réponses

pour m'aider à me souvenir de la signification de padding , je pense à un grand manteau avec beaucoup de épais coton padding . Je suis dans mon manteau, mais moi et mon manteau rembourré sommes ensemble. Nous sommes une unité.

mais pour se rappeler marge , je pense à Hé, donnez-moi un peu de marge! " C'est l'espace vide entre moi et vous. Ne rentre pas dans ma zone de confort ... ma marge.

pour le rendre plus clair, voici une image de rembourrage et de marge dans un TextView :

enter image description here

xml de mise en page de l'image ci-dessus

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="#c5e1b0"
        android:textColor="#000000"
        android:text="TextView margin only"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="#f6c0c0"
        android:textColor="#000000"
        android:text="TextView margin only"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#c5e1b0"
        android:padding="10dp"
        android:textColor="#000000"
        android:text="TextView padding only"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#f6c0c0"
        android:padding="10dp"
        android:textColor="#000000"
        android:text="TextView padding only"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="#c5e1b0"
        android:textColor="#000000"
        android:padding="10dp"
        android:text="TextView padding and margin"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_margin="10dp"
        android:background="#f6c0c0"
        android:textColor="#000000"
        android:padding="10dp"
        android:text="TextView padding and margin"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#c5e1b0"
        android:textColor="#000000"
        android:text="TextView no padding no margin"
        android:textSize="20sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#f6c0c0"
        android:textColor="#000000"
        android:text="TextView no padding no margin"
        android:textSize="20sp" />

</LinearLayout>

lié

505
répondu Suragch 2017-05-23 10:31:37

Padding est l'espace à l'intérieur de la frontière, entre la frontière et le contenu de la vue réelle. Notez que le rembourrage entoure complètement le contenu: il y a du rembourrage sur les côtés supérieur, inférieur, droit et gauche (qui peuvent être indépendants).

marges sont les espaces à l'extérieur de la frontière, entre la frontière et les autres éléments à côté de cette vue. Dans l'image, la marge est la zone grise à l'extérieur de l'ensemble de l'objet. Notez que, comme le rembourrage, la marge contourne complètement le contenu: il y a des marges sur les côtés supérieur, inférieur, droit et gauche.

Une image en dit plus que 1000 mots (extrait de Marge Vs Padding - Propriétés CSS ):

alt text

562
répondu Cristian 2013-11-09 12:16:45

rembourrage est à l'intérieur d'une vue.

marge est à l'extérieur d'une vue.

cette différence peut être pertinente pour les propriétés de l'arrière-plan ou de la taille.

68
répondu Floern 2011-01-07 08:24:38

rembourrage est à l'intérieur de la vue, marge est à l'extérieur. Un rembourrage est disponible pour toutes les vues. Selon la vue, il peut y avoir ou non une différence visuelle entre le rembourrage et la marge.

pour les boutons, par exemple, le bouton caractéristique de l'image de fond comprend le rembourrage, mais pas la marge. En d'autres termes, l'ajout de plus de rembourrage rend le bouton plus grand visuellement, tandis que l'ajout de plus de marge fait juste l'écart entre le bouton et la commande suivante plus large.

pour TextView s, par contre, l'effet visuel du rembourrage et de la marge est identique.

la question de savoir si une marge est disponible ou non est déterminée par le conteneur de la vue et non par la vue elle-même. Dans LinearLayout marge est supporté, dans AbsoluteLayout (considéré obsolète maintenant) - no.

41
répondu Seva Alekseyev 2013-07-25 16:12:53

L'image ci-dessous vous permettra de comprendre le rembourrage et la marge -

enter image description here

23
répondu Akshay Paliwal 2015-02-23 04:25:12

Remplissage est l'espace à l'intérieur de la frontière entre la frontière et l'image ou le contenu de la cellule. Les marges sont les espaces à l'extérieur de la frontière, entre la frontière et les autres éléments à côté de cet objet.

7
répondu raja 2012-11-02 08:19:43

parfois, vous pouvez obtenir le même résultat en jouant seulement avec le rembourrage ou la marge. Exemple:

dire que la vue X contient la vue Y (alias : la vue Y est à L'intérieur de la vue X).

- Vue Y Avec marge=30 ou vue X avec capitonnage=30 donnera le même résultat: Vue Y aura un décalage de 30.

7
répondu Akli 2013-02-09 13:32:12

capitonnage

Le rembourrage est à l'intérieur d'une vue.Par exemple , si vous donnez android:paddingLeft=20dp , alors les éléments à l'intérieur de la vue s'arrangeront avec 20dp largeur de gauche.Vous pouvez également utiliser paddingRight , paddingBottom , paddingTop qui sont de donner le rembourrage de la droite, en bas et en haut respectivement.

marge

La marge est en dehors d'un View . Par exemple, si vous donner android:marginLeft=20dp , puis la vue sera organisée après 20dp de gauche.

7
répondu jinosh 2015-07-03 07:59:00

rembourrage désigne l'espace entre le cadre d'origine du widget et du widget. Mais la marge est l'espace entre le cadre d'origine du widget pour délimiter le cadre d'un autre widget. enter image description here .

7
répondu Anantha krishnan 2017-02-01 06:06:50

laisse supposer que vous avez un bouton dans une vue et la taille de la vue est de 200 par 200, et la taille du bouton est de 50 par 50, et le titre du bouton est HT, maintenant la différence entre la marge et le rembourrage est, vous pouvez régler la marge du bouton dans la vue, par exemple 20 à gauche 20 à partir du haut, et le rembourrage ajustera la position du texte dans le bouton ou textview etc par exemple, la valeur de remplissage est de 20 à partir de la gauche. pour régler la position du texte.

3
répondu Steve 2014-09-12 10:19:34

Marge se réfère à l'espace supplémentaire à l'extérieur d'un élément. Rembourrage se réfère à l'espace supplémentaire à l'intérieur d'un élément. La marge est l'espace supplémentaire autour du contrôle. Le rembourrage est un espace supplémentaire à l'intérieur de la commande.

il est difficile de voir la différence avec la marge et le rembourrage avec un remplissage blanc, mais avec un remplissage de couleur, vous pouvez le voir très bien.

2
répondu Pawan Kumar Singh 2015-07-03 02:56:59

en termes simples:

rembourrage de modifier la taille de la boîte (avec quelque chose).

marge change l'espace entre les différentes cases

1
répondu 2015-08-02 11:12:35

en plus de toutes les bonnes réponses ci-dessus, une autre différence est que capitonnage augmente la surface cliquable d'une vue, tandis que marges ne le font pas. Ceci est utile si vous avez une petite image cliquable mais que vous voulez faire le gestionnaire de clic pardonner.

par exemple, voir cette image de ma mise en page avec un ImageView (l'icône Android) où j'ai placé le paddingBotton pour être 100dp (la l'image est le lanceur stock mipmap ic_launcher ). Avec le gestionnaire de clic attaché j'ai été en mesure de cliquer à l'extérieur et au-dessous de l'image et encore enregistrer un clic.

enter image description here

0
répondu scorpiodawg 2018-01-08 20:27:16

en termes simples:

  1. rembourrage - crée de l'espace à l'intérieur de la bordure de la vue.
  2. marge-crée de l'espace à l'extérieur de la limite de la vue.
0
répondu mohammed nathar 2018-02-28 05:51:36