If you subclass one of your own view controller classes, you will certainly want to call super
for any of these types of methods or your own base class's methods will not be invoked.
There's also the question of whether your top-level view controller classes need to call super
to run the code in the base UIViewController
class itself. In the UIViewController reference, it appears that the requirement to call super
is documented for certain methods, among them viewWillAppear:
, viewDidAppear
, viewWillDisappear:
, and viewDidDisappear
:
If you override this method, you must call
super
at some point in your implementation.
However, there is no indication of what will happen if you fail to do so.
So apparently, there is something implemented in these methods in the base iOS framework view controller classes. Or at least, Apple reserves the option to implement something in these methods. You could say that they are virtual rather than abstract methods.