Para ayudarme a recordar el significado del relleno , pienso en un abrigo grande con mucho relleno de algodón grueso . Estoy dentro de mi abrigo, pero mi abrigo acolchado y yo estamos juntos. Somos una unidad
Pero para recordar el margen , pienso en " ¡Oye, dame un margen! " Es el espacio vacío entre tú y yo. No entres en mi zona de confort, mi margen.
Para hacerlo más claro, aquí hay una imagen de relleno y margen en TextView:
diseño xml para la imagen de arriba
<?xml version="1.0" encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical"><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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"/><TextViewandroid: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>
Relleno es el espacio dentro del borde, entre el borde y el contenido de la vista real. Tenga en cuenta que el relleno va completamente alrededor del contenido: hay relleno en los lados superior, inferior, derecho e izquierdo (que puede ser independiente).
Los márgenes son los espacios fuera del borde, entre el borde y los otros elementos al lado de esta vista. En la imagen, el margen es el área gris fuera del objeto completo. Tenga en cuenta que, como el relleno, el margen va completamente alrededor del contenido: hay márgenes en los lados superior, inferior, derecho e izquierdo.
La respuesta es para HTML / CSS, la pregunta era sobre Android. El modelo de vista de Android está inspirado en HTML, pero no es idéntico. Por un lado, el borde no es un objeto considerable de primera clase allí.
Seva Alekseyev
48
NOTA: en Android, la propiedad layout_width incluye contenido y relleno. (En HTML, la propiedad css width se refiere solo al ancho del contenido). Como dijo Seva, Android no tiene un concepto integrado de bordes. Puede usar un fondo png de 9 parches o un vector xml dibujable para agregar un borde en Android.
SharkAlley
12
También vale la pena señalar que el fondo se modifica en función del margen, pero no del relleno (en Android.)
ArtOfWarfare
En Android, lo que aquí se conoce como el "borde", es en realidad el "contenedor de vista". Esto debería aclarar un poco las cosas, espero.
The Hungry Androider
75
El relleno está dentro de una vista.
El margen está fuera de una vista.
Esta diferencia puede ser relevante para las propiedades de fondo o tamaño.
El relleno está dentro de la vista, el margen está afuera. El relleno está disponible para todas las vistas. Dependiendo de la vista, puede haber o no una diferencia visual entre el relleno y el margen.
Para los botones, por ejemplo, la imagen de fondo característica del botón incluye el relleno, pero no el margen. En otras palabras, agregar más relleno hace que el botón se vea visualmente más grande, mientras que agregar más margen solo hace que el espacio entre el botón y el siguiente control sea más amplio.
Para TextViews, por otro lado, el efecto visual del relleno y el margen es idéntico.
La disponibilidad de margen está determinada por el contenedor de la vista, no por la vista misma. En LinearLayoutmargen es compatible, en AbsoluteLayout(considerado obsoleto ahora) - no.
El relleno significa espacio entre el widget y el marco original del widget. Pero el margen es el espacio entre el marco original del widget y los límites del marco de otro widget. .
El relleno es el espacio dentro del borde entre el borde y la imagen real o el contenido de la celda. Los márgenes son los espacios fuera del borde, entre el borde y los otros elementos al lado de este objeto.
Relleno
El relleno está en el interior de un ejemplo view.For si se le da android:paddingLeft=20dp, a continuación, los elementos dentro de la vista arreglarán con 20dpla anchura de left.You también se puede utilizar paddingRight, paddingBottom,paddingTop que son para dar el acolchado de derecha, parte inferior y superior respectivamente.
Margen
Margen está fuera de a View. Por ejemplo, si das android:marginLeft=20dp, entonces la vista se organizará después 20dpdesde la izquierda.
Supongamos que tiene un botón en una vista y el tamaño de la vista es 200 por 200, y el tamaño del botón es 50 por 50, y el título del botón es HT. Ahora, la diferencia entre el margen y el relleno es que puede establecer el margen del botón en la vista, por ejemplo 20 desde la izquierda, 20 desde la parte superior, y el relleno ajustará la posición del texto en el botón o la vista de texto, etc. , el valor de relleno es 20 desde la izquierda, por lo que ajustará la posición del texto.
El margen se refiere al espacio extra fuera de un elemento. El relleno se refiere al espacio extra dentro de un elemento. El margen es el espacio extra alrededor del control. El acolchado es espacio extra dentro del control.
Es difícil ver la diferencia con el margen y el relleno con un relleno blanco, pero con un relleno de color puedes verlo bien.
Además de todas las respuestas correctas anteriores, otra diferencia es que el relleno aumenta el área en la que se puede hacer clic en una vista, mientras que los márgenes no . Esto es útil si tiene una imagen en la que se puede hacer clic, pero desea que el controlador de clics sea indulgente.
Por ejemplo, vea esta imagen de mi diseño con un ImageView(el icono de Android) donde configuré el paddingBottonser 100dp(la imagen es el mipmap del iniciador de acciones ic_launcher). Con el controlador de clics adjunto pude hacer clic fuera y debajo de la imagen y aún así registrar un clic.
Respuestas:
Para ayudarme a recordar el significado del relleno , pienso en un abrigo grande con mucho relleno de algodón grueso . Estoy dentro de mi abrigo, pero mi abrigo acolchado y yo estamos juntos. Somos una unidad
Pero para recordar el margen , pienso en " ¡Oye, dame un margen! " Es el espacio vacío entre tú y yo. No entres en mi zona de confort, mi margen.
Para hacerlo más claro, aquí hay una imagen de relleno y margen en
TextView
:diseño xml para la imagen de arriba
Relacionado
fuente
Relleno es el espacio dentro del borde, entre el borde y el contenido de la vista real. Tenga en cuenta que el relleno va completamente alrededor del contenido: hay relleno en los lados superior, inferior, derecho e izquierdo (que puede ser independiente).
Los márgenes son los espacios fuera del borde, entre el borde y los otros elementos al lado de esta vista. En la imagen, el margen es el área gris fuera del objeto completo. Tenga en cuenta que, como el relleno, el margen va completamente alrededor del contenido: hay márgenes en los lados superior, inferior, derecho e izquierdo.
Una imagen dice más de 1000 palabras (extraídas de Margin Vs Padding - Propiedades de CSS ):
fuente
El relleno está dentro de una vista.
El margen está fuera de una vista.
Esta diferencia puede ser relevante para las propiedades de fondo o tamaño.
fuente
El relleno está dentro de la vista, el margen está afuera. El relleno está disponible para todas las vistas. Dependiendo de la vista, puede haber o no una diferencia visual entre el relleno y el margen.
Para los botones, por ejemplo, la imagen de fondo característica del botón incluye el relleno, pero no el margen. En otras palabras, agregar más relleno hace que el botón se vea visualmente más grande, mientras que agregar más margen solo hace que el espacio entre el botón y el siguiente control sea más amplio.
Para
TextView
s, por otro lado, el efecto visual del relleno y el margen es idéntico.La disponibilidad de margen está determinada por el contenedor de la vista, no por la vista misma. En
LinearLayout
margen es compatible, enAbsoluteLayout
(considerado obsoleto ahora) - no.fuente
La imagen de abajo le permitirá comprender el relleno y el margen.
fuente
El relleno significa espacio entre el widget y el marco original del widget. Pero el margen es el espacio entre el marco original del widget y los límites del marco de otro widget. .
fuente
El relleno es el espacio dentro del borde entre el borde y la imagen real o el contenido de la celda. Los márgenes son los espacios fuera del borde, entre el borde y los otros elementos al lado de este objeto.
fuente
A veces puede lograr el mismo resultado jugando solo con relleno O margen. Ejemplo:
Say View X contiene view Y (también conocido como: View Y está dentro de View X).
-Ver Y con margen = 30 O Ver X con relleno = 30 logrará el mismo resultado: Ver Y tendrá un desplazamiento de 30.
fuente
Relleno
El relleno está en el interior de un ejemplo view.For si se le da
android:paddingLeft=20dp
, a continuación, los elementos dentro de la vista arreglarán con20dp
la anchura de left.You también se puede utilizarpaddingRight
,paddingBottom
,paddingTop
que son para dar el acolchado de derecha, parte inferior y superior respectivamente.Margen
Margen está fuera de a
View
. Por ejemplo, si dasandroid:marginLeft=20dp
, entonces la vista se organizará después20dp
desde la izquierda.fuente
Supongamos que tiene un botón en una vista y el tamaño de la vista es 200 por 200, y el tamaño del botón es 50 por 50, y el título del botón es HT. Ahora, la diferencia entre el margen y el relleno es que puede establecer el margen del botón en la vista, por ejemplo 20 desde la izquierda, 20 desde la parte superior, y el relleno ajustará la posición del texto en el botón o la vista de texto, etc. , el valor de relleno es 20 desde la izquierda, por lo que ajustará la posición del texto.
fuente
El margen se refiere al espacio extra fuera de un elemento. El relleno se refiere al espacio extra dentro de un elemento. El margen es el espacio extra alrededor del control. El acolchado es espacio extra dentro del control.
Es difícil ver la diferencia con el margen y el relleno con un relleno blanco, pero con un relleno de color puedes verlo bien.
fuente
Además de todas las respuestas correctas anteriores, otra diferencia es que el relleno aumenta el área en la que se puede hacer clic en una vista, mientras que los márgenes no . Esto es útil si tiene una imagen en la que se puede hacer clic, pero desea que el controlador de clics sea indulgente.
Por ejemplo, vea esta imagen de mi diseño con un
ImageView
(el icono de Android) donde configuré elpaddingBotton
ser100dp
(la imagen es el mipmap del iniciador de accionesic_launcher
). Con el controlador de clics adjunto pude hacer clic fuera y debajo de la imagen y aún así registrar un clic.fuente
En palabras simples:
fuente
En palabras simples: el
relleno cambia el tamaño del cuadro (con algo).
margen cambia el espacio entre diferentes cuadros
fuente