![Gradroid](https://habrastorage.org/storage1/6d257170/929ebcd6/b18a1532/23d8ea0f.png)
В прошлом уроке мы рассмотрели основные приемы стилизации. Идем дальше и узнаем немного нового про градиенты и рамки фигур.
Градиенты
Все хорошее быстро приедается, и мы хотим реализовать другие типы градиентов. Андроид поддерживает три стиля градиентов:
- Линейный
- Радиальный
- Конический
С линейным мы уже знакомы, идем к радиальному.
Радиальный градиент
![radial gradient](https://habrastorage.org/storage1/a08bc53a/000bbc4f/c4a726d8/be0a4704.png)
В радиальном градиенте происходит плавный переход из одного цвета в другой.
Давайте модифицируем hbutton_normal.xml из предыдущего урока и изменим градиент на радиальный:
<gradient
android:endColor="#00CC00"
android:gradientRadius="40"
android:startColor="#EE0000"
android:type="radial" />
Получаем на выходе:
![button 1](https://habrastorage.org/storage1/b1fa4b5d/8dde6219/c05f2b6a/139eede6.png)
Хм, а не сместить ли нам градиент левее?
<gradient
android:centerX="0.2"
android:endColor="#00CC00"
android:gradientRadius="40"
android:startColor="#EE0000"
android:type="radial" />
Получаем:
![](https://habrastorage.org/storage1/05ffd403/561647e9/92c3204e/0f8cd608.png)
Допустим, мы хотим добавить еще цветов. Андроид позволяет добавить еще один цвет в центр градиента:
<gradient
android:centerColor="#0000DD"
android:centerX="0.2"
android:endColor="#00CC00"
android:gradientRadius="40"
android:startColor="#EE0000"
android:type="radial" />
Любуемся:
![](https://habrastorage.org/storage1/85909336/a935a7e1/e922cb7c/d10ac08a.png)
Конический градиент
В целом я не очень понимаю, зачем вообще Андроиду этот градиент, но вдруг вам пригодится:
<gradient
android:centerColor="#0000DD"
android:centerX="0.8"
android:endColor="#00CC00"
android:gradientRadius="40"
android:startColor="#EE0000"
android:type="sweep" />
Получаем:
![](https://habrastorage.org/storage1/a591f3be/7668fa3b/e8190abd/ed62265e.png)
Рамки
Рамки бывают двух видов — обычные непрерывные и необычные штрихами:)
Обычные рамки
Все довольно просто — цвет и толщина рамки:
<stroke
android:width="2dp"
android:color="#00FFFF" />
![](https://habrastorage.org/storage1/a570002d/d98a0d8f/4ce5be3c/ca51fbcb.png)
Штрихи
Дополнительно указываем ширину штриха и расстояние между ними:
<stroke
android:dashGap="3dp"
android:dashWidth="5dp"
android:width="2dp"
android:color="#00FFFF" />
Получаем:
![](https://habrastorage.org/storage1/9dd3e7e9/26e3b410/fd06a4a1/be912cbb.png)