【发布时间】:2015-08-27 11:40:48
【问题描述】:
我在 Xcode 7 上使用 Swift 2 我有一个带有 containerView 的 ViewController。 containerView 调用具有 tableView 的 childViewController。在 tableView 中,我放置了一个行高为 60 pts 的自定义 tableViewCell。
问题:在运行模式下:当 tableView 在容器中显示为 parentcontroller 的一部分时 -- 行高不会保持 60 pts。它变成了一些任意的高度。这个新的任意高度与容器的大小无关。即使我使容器变小/变大,新的高度仍然存在。我希望它是我在 childViewController 中指定的自定义高度
下面是我添加 childViewController 和设置自动布局的代码
func addController(controller: UIViewController)
{
addChildViewController(controller)
containerView.addSubview(controller.view)
controller.view.translatesAutoresizingMaskIntoConstraints = false
//Layouting within view controller
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 tableview containers