我有一个UIView,我使用autolayout
列出了各种子视图。我在interface builder
中以图形方式完成了这项工作,所有设备尺寸的布局均可正常使用。
此UIView subclass
没有代码可以覆盖任何默认方法。
然后我使用以下代码在我的UIView控制器中加载这个UIView:
self.view.addSubview(UIView.loadFromNibNamed("SCPortraitCamera"))
self.view.setTranslatesAutoresizingMaskIntoConstraints(false)
let widthConstraint = NSLayoutConstraint(item: self.view, attribute: NSLayoutAttribute.Width, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.Width, multiplier: 1, constant: self.view.frame.width)
let heightConstraint = NSLayoutConstraint(item: self.view, attribute: NSLayoutAttribute.Height, relatedBy: NSLayoutRelation.Equal, toItem: nil, attribute: NSLayoutAttribute.Height, multiplier: 1, constant: self.view.frame.height)
self.view.addConstraint(widthConstraint)
self.view.addConstraint(heightConstraint)
这是在viewdidLoad中完成的。
UIView正确显示,但它看起来不像任何UIView子视图使用界面构建器中设置的自动布局约束。
任何帮助都非常感激。
答案 0 :(得分:0)
有几个问题:
您可以参考本指南:Autolayout Guide
或者对于这个问题:What is auto layout?
希望这可以帮助你。