ios - 如何将数据从父 View Controller 传递到子容器 View Controller

标签 ios swift uiviewcontroller uicontainerview

我正在尝试使用容器将数据从 ParentVC 发送到 childVC。该容器未嵌入,因为它在我的应用程序中多次使用,因此我无法使用 prepareForSegue。我在 ViewDidLoad 中实例化 containerVC。如何在加载时将数据传递给 containerVC?我已经看到了从 child 到 parent 的答案,但不是这样。提前感谢您的帮助。

import UIKit

class ParentVC: UIViewController {

    @IBOutlet var containerView: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let childVC = storyboard!.instantiateViewController(withIdentifier: "ChildVC") as! ChildVC
        addChild(childVC)
        childVC.view.autoresizingMask = [.flexibleHeight, .flexibleWidth]
        childVC.view.frame = containerView.bounds
        containerView.addSubview(childVC.view)
        childVC.didMove(toParent: self)

        // pass values to child
        childVC.boolVariable = true // THIS DOESN'T WORK. HOW TO PASS DATA TO THE CHILD?
    }
 }

最佳答案

你可以早点尝试

let childVC = storyboard!.instantiateViewController(withIdentifier: "ChildVC") as! ChildVC
childVC.boolVariable = true

关于ios - 如何将数据从父 View Controller 传递到子容器 View Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59227478/

相关文章:

Swift 4 Objective-C 运行时和转换为 NSObjectProtocol

ios - 从 ViewController 父类(super class)以编程方式添加 View 不会显示在前面

xcode - 图像并非全部显示在模拟器上,而是显示在 Storyboard中

ios - 用字典数据填充 UITableView (Swift)

ios - 如何删除空 UITextView 上的空白文本容器

ios - 在 safari/app store 中快速打开链接

swift - 在快速分配时

ios - 播放完成时快速更改按钮图像

ios - 在 CoreData 之外使用自动生成的模型文件对象

ios - show segue 后我的 viewcontroller 没有被取消初始化