Is there a built-in way to get from a UIView to its UIViewController? I know you can get from UIViewController to its UIView via [self view] but I was wondering if there is a reverse reference?
Is there a built-in way to get from a UIView to its UIViewController ?
Share
Since this has been the accepted answer for a long time, I feel I need to rectify it with a better answer.
Some comments on the need:
An example of how to implement it follows:
The view interfaces with its delegate (as
UITableViewdoes, for instance) and it doesn’t care if its implemented in the view controller or in any other class that you end up using.My original answer follows: I don’t recommend this, neither the rest of the answers where direct access to the view controller is achieved
There is no built-in way to do it. While you can get around it by adding a
IBOutleton theUIViewand connecting these in Interface Builder, this is not recommended. The view should not know about the view controller. Instead, you should do as @Phil M suggests and create a protocol to be used as the delegate.