【发布时间】:2016-06-24 01:54:45
【问题描述】:
我在调整通过 loadNibNamed 加载的视图大小时遇到问题,它们的框架在实例化时会更新,并且只有在我转到另一个视图并返回时才会获得设置的大小。
流程:
- viewDidLoad
- loadNibNamed
- 设置对应的框架
- 将笔尖添加到主视图(此处大小错误,与笔尖文件相同)
- 转到另一个视图
- 返回(正确显示大小)
- :悲伤:
我用来实例化笔尖的代码:
class NibView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
xibSetup("xibName")
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
xibSetup("xibName")
}
func xibSetup(name: String) {
view = loadViewFromNib(name)
view.translatesAutoresizingMaskIntoConstraints = false
view.frame.size = bounds.size
addSubview(view)
func loadViewFromNib(name: String) -> UIView {
let nib = NSBundle.mainBundle().loadNibNamed(name, owner: self, options: nil)
let view = nib[0] as! UIView
return view
}
}
【问题讨论】:
标签: ios swift autolayout nib