twinlakes twinlakes - 1 year ago 71
iOS Question

What init method is called when creating a UITextField in storyboard

The question:
I subclassed a UITextField as "UISelectField" so that I could override the delegate. I then created a UITextField in storyboard and changed its class to UISelectField in the Identity inspector. However, the default init method provided by Xcode, "initWithFrame", does not get called. What init method gets called when creating a UITextField with this approach?

The reason:
Right now, I set the delegate in my view controller's init:

[self.textField setDelegate:self.textField];
. I would like to remove this and replace it with
[self setDelegate:self];
in whatever init method gets called. Please tell me if there is a more elegant approach.

Answer Source
- (id)initWithCoder:(NSCoder *)aDecoder {
    self = [super initWithCoder:aDecoder];
    if (self) {
        // Custom Implementation
    return self;
Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download