快速 - 在tableviewcell内设置故事板

时间:2017-06-13 11:05:03

标签: ios swift uitableview

我正在尝试开发一个显示命令的TableViewController。该表的每个单元格都是collectionView,但我想知道我是否可以通过编程方式实例化故事板并将初始控制器(collectionViewController)传递给collectionView内的UITableViewCell }    this a schema of what I'm trying to do

问题是:我可以在tableViewCell内放置一个故事板,以便我可以在该单元格内导航并执行操作吗?

溶液

 override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
    let st = UIStoryboard(name: "Storyboard", bundle: nil)
    let vc = st.instantiateInitialViewController() as! UINavigationController

    self.addChildViewController(vc)
    vc.view.frame = CGRect(x:0, y:0,width: cell.contentView.frame.size.width, height: 40);
    cell.contentView.addSubview((vc.view)!)
    vc.didMove(toParentViewController: self)

    return cell
}
带有Storyboard

是一个自定义故事板,其中navigationController是第一个控制器

1 个答案:

答案 0 :(得分:0)

如果您想在ViewController

中打开UIView instantiateViewController,可以在任何UITableCell内打开contentView
let vc = self.storyboard.instantiateViewController(withIdentifier: "someViewController")
 self.addChildViewController(vc)
    vc.view.frame = CGRectMake(0, 0, cell.contentView.frame.size.width, self.container.frame.size.height);
    cell.contentView.addSubview(vc.view)
    vc.didMoveToParentViewController(self)

我希望这会对你有所帮助