Establecer márgenes para los botones utilizando drawable en android

Estoy desarrollando una aplicación android en eclipse. Tengo un conjunto de botones y quiero insertar un espacio entre ellos. Estoy fijando el fondo de estos botones usando un archivo del xml (background.xml) en los drawables. Para insertar espacios estoy usando las siguientes líneas de código para todos los botones seperatley en el archivo xml principal.

android:layout_marginLeft = "10dip" android:layout_marginRight = "10dip" android:layout_marginTop = "10dip" android:layout_marginBottom = "10dip" 

Mi pregunta es, ¿Hay una manera de establecer los márgenes modificando el archivo background.xml. De lo contrario tengo que editar todos los botones siempre que modifique los márgenes. Gracias por adelantado.

Este es un ejemplo perfecto de dónde usar un estilo. Un estilo es simplemente un grupo de atributos comunes que se desea aplicar a un gran número de objetos. Por ejemplo, puede crear un estilo denominado buttonStyle utilizando el código siguiente, que haría exactamente lo que desea. Si decide cambiar el margen, simplemente cambie el estilo. Si decide que desea hacer diferentes valores de margen para teléfonos de diferentes tamaños, sólo cree dos estilos, uno para el normal, uno para el tamaño grande y más si es necesario.

 <?xml version="1.0" encoding="utf-8"?> <resources> <style name="buttonStyle"> <item name="android:layout_marginLeft">10dip</item> <item name="android:layout_marginRight">10dip</item> <item name="android:layout_marginTop">10dip</item> <item name="android:layout_marginBottom">10dip</item> </style> </resources> 

A continuación, el código del botón se puede simplificar para esto:

 style="@style/buttonStyle" 

Cuando cambie el estilo, todos los botones cambiarán automáticamente. También puede realizar estilos anidados. Consulte la API para obtener más información.

Seguí una sintaxis diferente porque el fragmento de código de @PearsonArtPhoto no funcionará en mi entorno:

 <style android:id="@+id/tab_main" > <item android:layout_marginTop="10dp"></item> <item android:layout_marginBottom="10dp"></item> <item android:layout_marginLeft="10dp"></item> <item android:layout_marginRight="10dp"></item> </style> 

¡Espero que esto ayude!

  • El soporte de diseño de derecha a izquierda está causando problemas de advertencia en el editor de xml
  • ¿Cómo extraer datos de un artículo de Wikipedia?
  • ¿Por qué no puedo definir atributos de android en el espacio de nombres predeterminado?
  • Los dispositivos compatibles son extremadamente bajos
  • Mover EditText en NestedScrollView cuando aparece el teclado virtual
  • configurar el color de fondo en listview
  • Inflar diseño de forma programática en otro diseño
  • Error: Android-XML: Colocar un <WebView> en un elemento padre que utiliza un tamaño wrap_content puede llevar a errores sutiles; Utilizar match_parent
  • Cómo recuperar el valor de un atributo que contiene dos puntos en el nombre del atributo utilizando xpath
  • Android Cómo agregar icono en cada elemento de la lista listvIew y cambiar el color del texto, Color de fondo
  • Java.lang.IllegalStateException Necesita utilizar un tema Theme.AppCompat (o descendente) con esta actividad
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.