title: iOS 5 UIView drawRect override not working on device
body: <p>I'm preparing my iPhone app to publish on iOS 5 GM and came across a bug with UIView. When I override the drawRect method on a subclass, the Simulator shows the desired result but when I try to test on an actual device, the drawRect override doesn't have any effect at all.</p>
  
  <p>I even placed a logging statement inside a drawRect override and confirmed that it is being called.</p>
  
  <p>Has anyone else noticed this problem?</p>
  
  <p>Here's a override code I'm using:</p>
  
  <pre><code>- (void)drawRect:(CGRect)rect {
  DebugLog( @"*** calling drawRect ***" );
  
  CGContextRef context = UIGraphicsGetCurrentContext(); 
  
  // draw the dark gray background
  CGContextSetFillColor(context, [SkinManager getWhiteColor]);
  CGContextFillRect(context, CGRectMake(0.0, 0.0, rect.size.width, rect.size.height)); 
  
  // draw the text field background in white
  CGContextSetFillColor(context, [SkinManager getDarkGray]);
  CGContextFillRect(context, CGRectMake(2.0, 2.0, rect.size.width - 4, rect.size.height - 4)); 
  </code></pre>
  
  <p>}</p>
  
  <p>Here's the code for generating color</p>
  
  <pre><code>    +(const CGFloat*) getDarkGray {
          UIColor *color = [UIColor colorWithRed:51/255.0 green:51/255.0 blue:51/255.0 alpha:1];
  
          return [self getCGColor:color];
  }
  
  +(const CGFloat*) getCGColor: (UIColor*)color {
          CGColorRef colorref = [color CGColor];
  
          const CGFloat *components = CGColorGetComponents(colorref);
  
          return components;
  }
  </code></pre>
  
  <p>Again, this code works perfectly in iOS 4.x and in the Simulator for iOS 5. The only place that is broken is iOS 5 Device.</p>