title: Horizontal LinearGradient with android
body: <p>This must be an easy one but I'm really at a loss... The following code draws a rectangle with a linear gradient going from left to right, from white to black, </p>
  
  <pre><code>int x1 = 0, y1 = 0, x2 = 100,  y2 = 40;
  Shader shader = new LinearGradient(x1, y1, x2, y2, Color.WHITE, Color.BLACK, TileMode.CLAMP);
  Paint paint = new Paint();
  paint.setShader(shader);
  canvas.drawRect(new RectF(x1, y1, x2, y2), paint);
  </code></pre>
  
  <p>Ok, fine. Now what I'd like to do is to change this gradient into a <strong>horizontal</strong> one, so that the color goes from white to black, from top to bottom. What I tried to do is to add:</p>
  
  <pre><code>Matrix trans = new Matrix();
  trans.setRotate(90);
  shader.setLocalMatrix(trans);
  </code></pre>
  
  <p>but instead the gradient goes at a funny angel, or there is just a single color... I also tried to play with the coordinates of the gradient in all sorts of way (thinking that maybe they should be transformed) to no avail. What am I missing?</p>