Урок 162. Графика. Drawable. Shape, Gradient.
Добавлено: 18 ноя 2014, 05:00
В этом уроке:
- изучаем drawable-тег shape
Click here to read this article!
- изучаем drawable-тег shape
Click here to read this article!
Добро пожаловать на форум сайта
http://forum.startandroid.ru/
Код: Выделить всё
gradient = new GradientDrawable(GradientDrawable.Orientation.BL_TR, new int [] {
Color.rgb(255, 255, 255) ,
Color.rgb(0, 0, 255),
Color.rgb(255, 0, 127)
});
gradient.setShape(GradientDrawable.OVAL);
gradient.setGradientType(GradientDrawable.RADIAL_GRADIENT);
gradient.setGradientRadius(40);
gradient.setAlpha(127);
gradient.setGradientCenter(250, 250);
Код: Выделить всё
gradient.setBounds(250 - 20, 250 - 20, 250 + 20, 250 + 20);
gradient.draw(canvas);
setGradientCenter у тебя зашкален, убери его.Nyashka писал(а):Пытаюсь программно нарисовать радиальный градиент, но выводится только круг нарисованный крайним цветом. Код:вызов:Код: Выделить всё
gradient = new GradientDrawable(GradientDrawable.Orientation.BL_TR, new int [] { Color.rgb(255, 255, 255) , Color.rgb(0, 0, 255), Color.rgb(255, 0, 127) }); gradient.setShape(GradientDrawable.OVAL); gradient.setGradientType(GradientDrawable.RADIAL_GRADIENT); gradient.setGradientRadius(40); gradient.setAlpha(127); gradient.setGradientCenter(250, 250);
Подобный градиент линейного типа рисуется именно как градиент, причем даже с переходом в прозрачность, к чему я и стремлюсь. Но радиальный почему то рисуется только одним цветом. В чем загвоздка?Код: Выделить всё
gradient.setBounds(250 - 20, 250 - 20, 250 + 20, 250 + 20); gradient.draw(canvas);
Код: Выделить всё
<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
android:src="@drawable/eart_black"
android:tileMode="repeat"
/>
Думаю стоит смотреть в сторону LayerListSasha2dx писал(а):Но для полного счастья не хватает затенить немного полученное изображение вверху и внизу, не могу понять как это сделать и реально ли это вообще? Вот пример что я хочу