Cómo rellenar dos colores diferentes en forma personalizada?

He creado la forma personalizada en el proyecto android. Aquí está el código,

CurvedShape.xml: –

<shape xmlns:android="http://schemas.android.com/apk/res/android" > <stroke android:width="4dp" android:color="#ffffff" /> <padding android:left="7dp" android:top="7dp" android:right="7dp" android:bottom="7dp" /> <gradient android:centerColor="#ffffff" android:startColor="#32CD32" android:endColor="#ffffff"/> </shape> 

Main.xml: –

 <View android:layout_width="wrap_content" android:layout_height="150dp" android:layout_marginLeft = "10dp" android:layout_marginRight = "10dp" android:layout_centerHorizontal="true" android:layout_marginTop="20dp" android:background="@drawable/curvedshape"/> 

En forma, el atributo degradado dio color inicial como verde, que llenaba el color verde verticalmente. Pero quiero llenar el color como la imagen de abajo, el color de relleno en horizontal en la mitad de la forma. ¿Como hacer eso?

Introduzca aquí la descripción de la imagen

One Solution collect form web for “Cómo rellenar dos colores diferentes en forma personalizada?”

Utilice la lista de capas y dibuje dos formas en XML:

 <layer-list xmlns:android="http://schemas.android.com/apk/res/android" > < item> < shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <stroke android:width="4dp" android:color="#ffffff" /> </shape> </item> <item> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <stroke android:width="4dp" android:color="#7CFC00" /> </shape> </item> </layer-list> 

Ediciones: sólo tienes que usar este atributo de degradado en tu xml

  <Androide: angle = "- 90" android: centerX = "0.5" android: centerY = "0.5" android: centerColor = "# ffffff" androide: startColor = "# 32CD32" android: endColor = "# ffffff"
  /> 

Tengo uso este y esta forma similar de la demostración requerida por usted:

 < shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > < gradient android:angle="-90" android:centerX="0.5" android:centerY="0.5" android:centerColor="#ffffff" android:startColor="#32CD32" android:endColor="#ffffff" /> < /shape> 

  • ¿Cómo solucionar este error en Android? Java.net.MalformedURLException: Protocolo no encontrado:
  • Manera correcta de extender ParseObject y tener una fábrica de consultas genéricas
  • Android MediaPlayer.OnBufferingUpdateListener - El porcentaje de contenido almacenado en búfer es negativo
  • Android - Conexión a la base de datos MySQL
  • Cómo utilizar Runnable.wait () en AsyncTask? ¿Por qué el AsyncTask NO espera ...?
  • Un botón de dos oyentes en java
  • Desmarcando archivos XML en objetos Java en Android?
  • Cómo configurar el tamaño del archivo PDF con PdfDocument en Android
  • Tutorial para Android OpenGL ES
  • ¿Por qué estoy recibiendo este error "recurso esperado de tipo raw" en Android Studio?
  • Cómo deshabilitar la búsqueda de WWW-Authenticate encabezado en 401 en HttpUrlConnection en Android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.