title: Draw a shape over existing view
body: <p>I have a view and I want to draw a shape on it (circle for example) after click.
  <img src="https://i.stack.imgur.com/FM4Md.png" alt="enter image description here"></p>
  
  <p>I've tried to do this but there are two problems -</p>
  
  <ol>
  <li>onDraw is never called.</li>
  <li><p>Not sure the setLayoutParams(v.getLayoutParams) will give me the result I want.</p>
  
  <pre><code>    @Override
      public void onClick(View v) {
          CircleView circle = new CircleView(GameXoActivity.this, v.getWidth(), v.getHeight());
          circle.setLayoutParams(v.getLayoutParams());
          circle.startDrawing();
      }
  </code></pre></li>
  </ol>
  
  <p>CircleView:</p>
  
  <pre><code>    public CircleView(Context context, int width, int height) {
          super(context);
          this.width = width;
          this.height = height;
      }
  
      protected void startDrawing() {
          this.postInvalidate(); 
      }
  
      @Override
      protected void onDraw(Canvas canvas) {
          Log.d("TAG", "onDraw");
          // draw circle
          }
      }
  
  }
  </code></pre>
  
  <p><strong>UPDATE:</strong></p>
  
  <p>The shape is not an image and I want to draw it with animation (I didn't write the entire code).
  Also, the shape is not always a circle, so using a drawable-state is not an option. 
  Because there is not just one view, but 9, I don't think the making 9 more on top of them would be right.</p>