微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – ContainerView添加插座

我有一个带有Container View的ViewController,它有一个嵌入式TableViewController.

现在我想访问ViewController中的TableView,我该如何为它做出一个出口?

我尝试将Container View添加为插座,但我无法访问嵌入式TableViewController.

解决方法

您无法直接创建插座,因为表视图位于不同的场景(视图控制器)中,但是一旦您有对UITableViewController实例的引用,就可以访问tableview.有几种不同的方法可以做到这一点.

首先,您可以使用UIViewController子类的childViewControllers属性.如果你知道只有一个孩子,那么你可以直接访问它,否则你需要确定哪个是正确的孩子,比如循环遍历数组.

let myTableViewController = self.childViewControllers[0] as! UITableViewController
let theTableView = myTableViewController.tableView

第二个选项是在嵌入segue期间访问UITableViewController.如果您单击故事板中的嵌入segue,您可以为其提供与任何其他segue一样的标识符.然后你可以实现prepareForSegue并获取嵌入式UITableViewController实例 –

override func prepareForSegue(segue: UIStoryboardSegue!,sender: AnyObject!) {
    if (segue.identifier == "tableviewEmbed") {
        let myTableViewController = segue.destinationViewController as! UITableViewController
        let theTableView = myTableViewController.tableView
    }
}

就个人而言,我更喜欢第二种方法,因为我认为它更“清洁”

原文地址:https://www.jb51.cc/iOS/331153.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐