2015-01-19 3 views
2

У меня есть несколько линий в разных положениях. Например:Рисование линии с градиентом

canvas.drawLine(startXLine1 ,stopXLine1, startYLine1, stopYLine1, paint) 
canvas.drawLine(startXLine2 ,stopXLine2, startYLine2, stopYLine2, paint) 

Я хочу, чтобы градиент, как это для каждой строки: enter image description here

Когда я пытаюсь это, я не имею этот эффект, но градиент с этим направлением синего (слева) ---> белый (справа) Как это: http://media.24ways.org/2011/verou/1.png

Shader shader = new LinearGradient(startXLine1, startYLine1, stopXLine1, stopYLine1, res.getColor(R.color.blue), res.getColor(R.color.white), Shader.TileMode.CLAMP); 

paint.setShader(shader); 

Кто-то может помочь мне с этим?

ответ

3

Чтобы заполнить фон, как в изображении:

Shader shader = new LinearGradient(0, 0, 0, h /*canvas height*/, res.getColor(R.color.blue), res.getColor(R.color.white), Shader.TileMode.MIRROR /*or REPEAT*/); 

paint.setShader(shader); 
+0

Он по-прежнему с неправильным направлением. Я хочу синий сверху и белый снизу, и я становлюсь синим слева и белым справа. – rguerra

+0

Я отредактировал ответ, попробуйте еще раз с обновленным предложением. Дайте мне знать :) – bonnyz

+0

Направление равняется – rguerra

Смежные вопросы