it-swarm.com.ru

мы можем сделать многоцветный градиент в xml для фона Android?

Я пытался сделать многоцветный фон в XML, но было доступно только 3 варианта начала, центра, конца и указанных углов. Разве мы не можем сделать фон, как это ниже ..  multi color at different angle

 multi color at different angle

Можем ли мы сделать такой фон в Android ?? 

10
Tapan Kumar Patro

Вы не можете реализовать цвет градиента +3 в XML-файле. Но вы можете сделать это в своем коде Java/kotlin с помощью класса GradientDrawable. Это версия Java, замените массив цветов вашими идентификаторами цветов.

GradientDrawable gradientDrawable = new GradientDrawable(
                Orientation.TOP_BOTTOM,
                new int[]{ContextCompat.getColor(this, R.color.color1),
                        ContextCompat.getColor(this, R.color.color2),
                        ContextCompat.getColor(this, R.color.color3),
                        ContextCompat.getColor(this, R.color.color4)});

        findViewById(R.id.background).setBackground(gradientDrawable);
20
Pelanes

По словам developers.Android Вы можете ... и это код, который они использовали

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:shape="rectangle" >

<gradient
    Android:angle="45"
    Android:endColor="#87CEEB"
    Android:centerColor="#768087"
    Android:startColor="#000"
    Android:type="linear" />

</shape>

также вот учебник

надеюсь это поможет

17
Ameer Hamza

Создайте новый XML-файл в Drawable и скопируйте этот код:

<?xml version="1.0" encoding="utf-8"?>
<shape    xmlns:Android="http://schemas.Android.com/apk/res/Android">

<gradient Android:startColor="#9A0C0C"
          Android:centerColor="#CE9908"
          Android:endColor="#3091FF"
          Android:angle="270"/>
</shape>

 enter image description here

1
Maryam Azhdari

Вы можете сделать это со слоем со списком радиальных градиентов, а затем установить разную непрозрачность для разных элементов.

0
Pete