UIView没有名为“ setTranslatesAutoresizingMaskIntoConstraints”的成员

阿努阿罗拉

我正在使用Xcode 7 beta和Swift 2

我试图通过addController动作将ViewController(childVC)添加到容器中。我想针对容器设置ViewController的自动布局。在下面的代码中,它给出了以下错误

UIView没有名为“ setTranslatesAutoresizingMaskIntoConstraints”的成员。我也尝试过将'false'放在括号中(请参阅下面的注释行)-但这甚至行不通

我基本上希望childVC占据整个容器。childVC具有一个表格视图,该表格视图应根据容器的大小进行调整。

func addController(controller: UIViewController)
{
    addChildViewController(controller)
    containerView.addSubview(controller.view)


   controller.view.setTranslatesAutoresizingMaskIntoConstraints = false

   // controller.view.setTranslatesAutoresizingMaskIntoConstraints(false)
    var constraints = NSLayoutConstraint.constraintsWithVisualFormat("H:|[view]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: ["view" : controller.view])
    constraints += NSLayoutConstraint.constraintsWithVisualFormat("V:|[view]|", options: NSLayoutFormatOptions(rawValue: 0), metrics: nil, views: ["view" : controller.view])
    NSLayoutConstraint.activateConstraints(constraints)
    didMoveToParentViewController(controller)
    currentController = controller

}
托马斯·克鲁斯

在Swift 2中,该setTranslatesAutoresizingMaskIntoConstraints方法成为属性- translatesAutoresizingMaskIntoConstraints

这与API版本无关,并且可用性检查(在Swift 2中也是新功能)完全没有必要。

如果使用Swift 2,只需在代码库中设置属性值。如果从Swift 1升级,您可能会看到错误,需要更新前一个函数调用。

简单。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章