我这样做是为了获得 View :
[self.superview viewWithTag:10]
但是我怎样才能得到那个 View 的 View Controller 。就像您可以获得 View Controller 的 View 一样,我想以另一种方式进行,这样我就可以向该 View Controller 发送消息(调用方法)。例如:
[[self.superview viewWithTag:10].viewController doSomething];
(显然这不是实际代码,但我想要类似的东西)
最佳答案
您可以使用-nextResponder
方法来做到这一点:
[(YourUIViewController *)[[self.superview viewWithTag:10] nextResponder] doSomething];
根据 http://developer.apple.com/library/ios/documentation/uikit/reference/UIResponder_Class/Reference/Reference.html#//apple_ref/occ/instm/UIResponder/nextResponder , "UIView 通过返回管理它(如果有)或其父 View (如果没有)的 UIViewController 对象来实现此方法"
关于objective-c - 获取 UIView 的 viewcontroller (iphone),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3025370/