我有 2 个视图控制器 A,B
- ViewController A 正在屏幕上显示
- ViewController B 的视图被添加到 ViewController A 的视图中。
如何在不传递指针的情况下从 ViewController B 访问 ViewController A?
self.parentViewController 不起作用它返回 null
我有 2 个视图控制器 A,B
如何在不传递指针的情况下从 ViewController B 访问 ViewController A?
self.parentViewController 不起作用它返回 null
为什么 viewController B 的视图会添加到 viewController A 的视图中?如果您打算向 viewController A 添加一个视图,您可以通过分配一个新的 UIView 并将其显示在当前视图之上来实现。
另一方面,如果您尝试从一个视图控制器转换到另一个视图控制器,即从 A 到 B,然后返回到 A,您应该使用 Apple 文档中的视图控制器编程指南中指定的 UINavigationController。
来源:查看控制器编程指南
编辑:如果你想使用[[self parentViewController] yourMethodHere];
你将需要一个视图层次结构,你可以使用 UINavigationController。在您当前的方案中,没有构建层次结构,因此没有父视图控制器。
这应该可以工作,尽管它不是很优雅:
UIViewController* viewControllerA =
(UIViewController*) [[self.view superview] nextResponder];