title: setNeedsDisplay does not always call drawRect
body: <p>I've seen this question posted before but I cannot find the answer..</p>
  
  <p>As expected, drawRect gets called automatically when the program launches. However when I call [self setNeedsDisplay] drawRect does not get called anymore and I cannot understand the reason why... </p>
  
  <p>//DrawView.m</p>
  
  <pre><code>[self setNeedsDisplay];
  
  -(void)drawRect:(CGRect)rect{
  
  NSLog(@ "Called_1");
  
  //DRAW A PATH
   }
  </code></pre>
  
  <p>Maybe using self is incorrect. I have also tried using DrawImage but still it doesn't work.</p>
  
  <p>//DrawView.h</p>
  
  <pre><code>@interface DrawView : UIView {
  
  UIImageView *drawImage;
  }
  </code></pre>
  
  <p>//DrawView.m</p>
  
  <pre><code>-(id)initWithCoder:(NSCoder *)coder
  {
  self = [super initWithCoder:coder];
  if (self) {
      drawImage = [[UIImageView alloc] initWithImage:nil];
      drawImage.frame = CGRectMake( 0, 0, self.frame.size.width, self.frame.size.height );
      [self addSubview:drawImage];
  }
  
  return self;
  }
  </code></pre>