Atributo de envío de xml de fondo personalizado de Android

Tengo el siguiente archivo xml:

<?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#FFFFFF"/> <corners android:radius="10dp"/> <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" /> </shape> 

Como se puede ver, todo lo que es, es una forma con esquinas redondeadas. Lo uso para el fondo en las disposiciones de la actividad de la siguiente manera:

 android:background="@drawable/rounded_corners" 

La forma del archivo está establecida en blanco. En diferentes diseños necesito diferentes colores. ¿Necesito crear un archivo xml de forma diferente para cada color? Necesito una manera de especificar en el diseño qué color para enviar al fondo, y de esa manera puedo usar el mismo xml para cualquier color que quiero.

Gracias.

 Do I need to create a different shape xml file for each color? 
  • Sí, si desea aplicar un color diferente para los diferentes archivos de diseño del archivo xml del diseño en
  • No, si aplica color diferente para archivos de diseño diferentes desde su archivo java (Activity) .

Solución para la opción 2:

// forma dibujable (rounded_corners.xml)

 <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid android:color="#FFFFFF"/> <corners android:radius="10dp"/> <padding android:left="0dp" android:top="0dp" android:right="0dp" android:bottom="0dp" /> </shape> 

// archivo de diseño

  <Button android:id="@+id/mButton" ... android:background="@drawable/rounded_corners" /> 

// archivo java (Activity)

 Button mButton = (Button) findViewById(R.id.mButton); ShapeDrawable rounded_corners = (ShapeDrawable )mButton.getBackground(); rounded_corners.getPaint().setColor(Color.RED); 

Espero que sea util !!

  • ¿Vista de lista con título, imagen y texto?
  • Cómo combinar conjuntos de imágenes, cadenas y enteros, en un formato fácil de mantener
  • Relacionar URI con <data> como http://example.com/algo en AndroidManifest
  • ¿Por qué utiliza una muestra? Al referenciar el estilo listSeparatorTextViewStyle?
  • Diferencia entre "@ id /" y "@ + id /" en Android
  • ¿Qué significan los valores para android: backgroundDimAmount?
  • Línea vertical XML
  • ¿Por qué usamos xml?
  • EditText - Intervalo entre el texto y la línea de EditText
  • Uso de ImageView como fondo para un diseño de Android
  • Colores de aplicaciones incoherentes en la pantalla de melocotones recientes
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.