paletas - ¿Establecer el color de fondo de una vista de diseño en un degradado en Android?
paletas de colores android studio (3)
¿Cómo especifico que el "color" de fondo de un elemento de vista de diseño de Android debe ser un degradado (en un ángulo específico)?
Deseo especificar esto en el XML, es decir, no en el tiempo de ejecución. ¿Preferiblemente como estilo puedo aplicar a cualquier diseño que desee con la propiedad de style
?
Así es como he establecido el estilo degradado. Espero que esto ayude. Pero lo he usado para ver texto. Es posible que tenga que realizar algunos cambios para que se ajusten a su fondo de diseño.
Shader textShader = new LinearGradient(0, 0, 0, 20, new int[] {
Color.WHITE, getResources().getColor(//some color),
getResources().getColor(//some color), Color.WHITE },
new float[] { 0.25f,0.50f,0.75f, 1 }, TileMode.CLAMP);
textview.getPaint().setShader(textShader);
Puedes usar algo como esto:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient android:startColor="#A1A1A1"
android:centerColor="#BDBDBD"
android:endColor="#A4A4A4"
android:angle="-90" />
</shape>
para construir un degradado (Tú eliges los colores que te gustan). Coloca esto en drawable y listo, tienes tu propia forma para usar como fondo: android:background="@drawable/the_name_of_your_xml"
crear gradient.xml
en /res/drawable
:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient
android:startColor="#FFFFFF"
android:endColor="#00000000"
android:angle="45"/>
</shape>
y en su archivo de diseño main.xml
en /res/layout
:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/gradient"
>
</LinearLayout>
puede especificar el ángulo reemplazando el valor de android:angle
y el color de inicio / final reemplazando android:startColor
y android:endColor