我有2个viewcontrollers A,B
如何在不传递指针的情况下从ViewController B访问ViewController A?
self.parentViewController不起作用,返回nuil
答案 0 :(得分:1)
为什么viewController B的视图被添加到viewController A的视图中?如果您想将视图添加到viewController A,可以通过分配新的UIView并在当前视图的顶部显示它来实现。
另一方面,如果您尝试从一个视图控制器转换到另一个视图控制器,即从A转到B然后再转到A,则应使用Apple文档中View Controller编程指南中指定的UINavigationController。
来源:View Controller Programming Guide
编辑:如果您想使用[[self parentViewController] yourMethodHere];
,则需要一个视图层次结构,您可以使用UINavigationController。在您当前的方案中,没有构建层次结构,因此没有父视图控制器。
答案 1 :(得分:0)
虽然它不是很优雅但应该有效:
UIViewController* viewControllerA =
(UIViewController*) [[self.view superview] nextResponder];