【发布时间】:2015-08-26 15:17:59
【问题描述】:
我正在使用 Xcode 7 beta 和 Swift 2
我正在尝试通过 addController 操作将 ViewController (childVC) 添加到容器中。我想为 ViewController 相对于容器设置自动布局。在下面的代码中,它给出了以下错误
UIView 没有名为“setTranslatesAutoresizingMaskIntoConstraints”的成员。 我也试过把'false'放在括号里(见下面的注释行)——但即使这样也行不通
我基本上是想让childVC占据整个容器。 childVC 有一个 tableview,它应该根据容器大小调整大小。
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
}
【问题讨论】:
-
它是一个函数而不是一个属性,所以你需要将它作为一个函数来调用。如果您注释掉第一行并取消注释已注释掉的函数调用行,会发生什么?错误是什么?
-
接受的答案不正确。
标签: ios swift autolayout nslayoutconstraint