【发布时间】:2023-03-04 11:48:01
【问题描述】:
我有一个ViewController,我在其中一个子视图上放置了另一个ViewController。在那个ViewController(放置在子视图中)中,我需要在点击事件上转到另一个ViewController。但是当我可以 self.navigationController pushViewController 方法时,我的日志显示它已推送但屏幕没有改变。
我附加的图像描述了场景,匹配细节是主机 ViewController。白色矩形是一个 UIView ,来宾ViewController 被放置在这个白色矩形视图中。当我点击圆形按钮(点击写入)时,另一个ViewController 应该替换主机ViewController。
这是一个复杂的应用程序,所以在这里粘贴代码应该不是一个好主意。只是一些解释会对我有很大帮助,我可以自己修复代码。关于我的错误需要一些提示。
提前感谢您的帮助。
【问题讨论】:
-
也许你应该尝试调用他的父视图控制器导航控制器
-
我已经试过了。但它的父 ViewController 为空。不知道为什么。
-
很有趣...您可以尝试的另一种方法是为您的子视图视图控制器创建自定义初始化方法,您可以在其中传递主视图控制器,以便您可以使用它来呈现一个新的视图控制器
-
检查 self.navigationController 是否为 nil?尝试推动像 [self presentViewController: animated: completion:]
-
@LucaIaco 这不是一个好主意,因为使用 ARC,它们不会被释放,因为存在循环引用。
标签: iphone objective-c uiviewcontroller subview