Every now and then I want a placeholder view that just draws itself. In this particular case, I wasn't sure where the contents of various view controllers were being set up, and whether it was re-using views or making them new each time. I added one of these to the view hierarchy. If I saw it, I know where it was created. Because the color is based on the view's address, each view will get a different color, making it easy to see if distinct views are being used or if one is being recycled.@interface BlahView : UIView @end @implementation BlahView - (void) drawRect: (CGRect) rect { CGRect bounds = self.bounds; UIColor *color = [UIColor colorWithRed: (((int)self >> 0) & 0xFF) / 255.0 green: (((int)self >> 8) & 0xFF) / 255.0 blue: (((int)self >> 16) & 0xFF) / 255.0 alpha: 1.0]; [color set]; UIRectFill(bounds); [[UIColor blackColor] set]; UIRectFrame(bounds); } // drawRect @end // BlahView ... CGRect frame = CGRectMake(200, 5, 300, 30); BlahView *view = [[BlahView alloc] initWithFrame: frame]; [viewController.view addSubview:view];And here is the version for Cocoa-non-touch:@interface BlahView : NSView @end @implementation BlahView - (void) drawRect: (CGRect) rect { CGRect bounds = self.bounds; NSColor *color = [NSColor colorWithDeviceRed: (((int)self >> 0) & 0xFF) / 255.0 green: (((int)self >> 8) & 0xFF) / 255.0 blue: (((int)self >> 16) & 0xFF) / 255.0 alpha: 1.0]; [color set]; NSRectFill(bounds); [[NSColor blackColor] set]; NSFrameRect (bounds); } // drawRect @end // BlahViewAnd for Swift/Cocoa-touch:func prettyColor(thanks to Step Christopher for the translation)(instance: T) -> UIColor { var address = unsafeBitCast(instance, Int.self) let red = CGFloat(address >> 0 & 0xFF) / 255.0 let green = CGFloat(address >> 8 & 0xFF) / 255.0 let blue = CGFloat(address >> 16 & 0xFF) / 255.0 let derivedColor = UIColor(red: red, green: green, blue: blue, alpha: 1.0) return derivedColor }