Calling awakeFromNib of superclass Calling awakeFromNib of superclass ios ios

Calling awakeFromNib of superclass


As per Apple:

You must call the super implementation of awakeFromNib to give parent classes the opportunity to perform any additional initialization they require. Although the default implementation of this method does nothing, many UIKit classes provide non-empty implementations. You may call the super implementation at any point during your own awakeFromNib method.

Before Xcode 8, there was no strict compiler requirement for this , howeever Apple has changed this with Xcode8, and compiler treats it as error if call to [super awakeFromNib] (or super.awakeFromNib() in swift) is missing in awakeFromNib.

So Swift version would look something like this:

func awakeFromNib() {   super.awakeFromNib()   ... your magical code ...}


You're effectively overriding the method 'awakeFromNib' in your code. NSView or whatever your superview is also implements awakeFromNib -- you should call the super at the start of your implementation before you do any of your code to make sure that NSView can set itself up correctly beforehand.

- (void)awakeFromNib{   [super awakeFromNib];   ... your code ...}