gpt4 book ai didi

ios - 从 XIB 加载时不遵守约束

转载 作者:可可西里 更新时间:2023-11-01 00:51:15 26 4
gpt4 key购买 nike

所以,我有以下 XIB

enter image description here

当作为 tableviewcell 加载时,这个 XIB 看起来像这样

enter image description here

我已经决定不再需要 TableView,所以我将我的 XIB 类从 UITableViewCell 更改为 UIView。在 ViewController 中,我将此代码添加到 viewDidLoad()

var nView = MyChartView.instanceFromNib() as! MyChartView
self.view.addSubview(nView)

结果我得到了这个

enter image description here

如您所见,它忽略了边距并继续向右侧(忽略红色,因为我用它来尝试调试问题。没有图表数据也不是问题)。我已经打印了 xib 的框架宽度,我发现它比屏幕尺寸大了很多,但我无法修复它。谁能解决问题?

最佳答案

当你以编程方式添加一个 subview 时,你还应该在 subview 和它的超 View 之间添加约束

var nView = MyChartView.instanceFromNib() as! MyChartView
self.view.addSubview(nView)
nView.translatesAutoresizingMaskIntoConstraints = false
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("H:|[nView]|", options: [], metrics: nil, views: ["nView": nView]))
view.addConstraints(NSLayoutConstraint.constraintsWithVisualFormat("V:|[nView]|", options: [], metrics: nil, views: ["nView": nView]))

关于ios - 从 XIB 加载时不遵守约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38081085/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com