Визуальные примеры помогают с этим вопросом.
Boilerplate
Чтобы создать градиент, вы создаете XML-файл в res / drawable. Я называю мой my_gradient_drawable.xml :
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<gradient
android:type="linear"
android:angle="0"
android:startColor="#f6ee19"
android:endColor="#115ede" />
</shape>
Вы устанавливаете это на фоне некоторого представления. Например:
<View
android:layout_width="200dp"
android:layout_height="100dp"
android:background="@drawable/my_gradient_drawable"/>
тип = «линейный»
Установите angle
для linear
типа. Оно должно быть кратным 45 градусам.
<gradient
android:type="linear"
android:angle="0"
android:startColor="#f6ee19"
android:endColor="#115ede" />
тип = «радиальный»
Установите gradientRadius
для radial
типа. Использование %p
означает, что это процент от наименьшего измерения родителя.
<gradient
android:type="radial"
android:gradientRadius="10%p"
android:startColor="#f6ee19"
android:endColor="#115ede" />
тип = «зачистка»
Я не знаю, почему кто-то использовал бы развертки, но я включил это для полноты. Я не мог понять, как изменить угол, поэтому я включаю только одно изображение.
<gradient
android:type="sweep"
android:startColor="#f6ee19"
android:endColor="#115ede" />
центр
Вы также можете изменить центр развертки или радиальные типы. Значения являются долями ширины и высоты. Вы также можете использовать %p
обозначения.
android:centerX="0.2"
android:centerY="0.7"