iOS - Create UIView subclass for rounded rectangle
ios, objective-c, storyboard, subclass, uiview
Solution
The `initWithFrame` method is not called when the view is instantiated from a XIB file. Instead, the `initWithCoder:` initializer is called, so you need to perform the same initialization in this method.
Problem
I'm trying to create & use a very simple UIView subclass for a rectangle with rounded corners. I've created a new class as follows : RoundedRect.h ``` #import <UIKit/UIKit.h> #import <QuartzCore/QuartzCore.h> @interface RoundedRect : UIView @end ``` RoundedRect.m ``` #import "RoundedRect.h" @implementation RoundedRect - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // Initialization code [[self layer] setCornerRadius:10.0f]; [[self layer] setMasksToBounds:YES]; } return self; } @end ``` I'm using iOS 5.1 with storyboards and have set the custom class property in the IB inspector window to 'RoundedRect', but when I run the app the rectangle still has square corners. Have I missed something obvious? Thanks Jonathan