gpt4 book ai didi

ios - 如何连接到 UIContainerView

转载 作者:塔克拉玛干 更新时间:2023-11-02 10:11:25 25 4
gpt4 key购买 nike

我有一个标准的扩展 UIViewController(称为 ParentViewController 或 PVC),并且想要一个由 ChildViewController 或 CVC 驱动的容器或 subview 。

我以编程方式看到,在 PVC 中我可以调用 addChild:CVC 并管理诸如 didMoveToParentViewController 等调用......但是,我希望有一种方法可以使用 Interface Builder 来完成此操作。

所以我布置了一个 PVC 实例,然后将一个 ContainerView 拖到 PVC 的 View 上,这为子窗口创建了一个 segue。在该窗口中,我分配了 ChildViewController 的类类型。到目前为止这看起来不错,但我如何从 PVC 中以编程方式引用它?让我们尝试通常的方法:在 PVC 类扩展中,我声明:

@property (nonatomic, strong) IBOutlet ChildViewController* cvc;

当我切换到 IB,突出显示 PVC 实例,并选择连接检查器时,我看到了我的 cvc 属性,但我无法将它连接到我的 containerView 实例(即使它的类类型设置正确)。它允许我拖动(画线),但不允许我实际连接它。为什么??

我认为这对 IB 来说是不可能的,但也许我看错了?

我已阅读 Apple's docs on child views如果我不能让 IB 执行我想要的操作,我准备以编程方式执行此操作。

最佳答案

cvc 是 PVC 的 subview Controller ,因此您可以使用 childViewControllers 属性获取对它的引用,您可以在代码中执行此操作,而不是在 IB 中连接一个 socket 。在 PVC 的 viewDidLoad 方法中,这样做:

self.cvc = (ChildViewController *)self.childViewControllers[0];

Xcode 不允许您连接两个不同 Controller 之间的 socket ,因此即使 cvc 作为 subview Controller 嵌入,它仍然是一个不同的 View Controller 。

关于ios - 如何连接到 UIContainerView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15008289/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com