Swift 从XIB文件创建的UIView未显示
我在我的项目中创建了一个xib文件,如下所示 我正在用这个代码初始化它Swift 从XIB文件创建的UIView未显示,swift,xcode,storyboard,xib,Swift,Xcode,Storyboard,Xib,我在我的项目中创建了一个xib文件,如下所示 我正在用这个代码初始化它 class MainItem: UIView { class func instanceFromNib() -> UIView { let view = UINib(nibName: "MainItem", bundle: nil).instantiate(withOwner: nil, options: nil).first as! UIView return view
class MainItem: UIView {
class func instanceFromNib() -> UIView {
let view = UINib(nibName: "MainItem", bundle: nil).instantiate(withOwner: nil, options: nil).first as! UIView
return view
}
}
stackView.addArrangedSubview(MainItem.instanceFromNib())
我将它添加到一个UIStackView
中,它已经有了一些视图,比如UILabel
或UIScrollView
。但当我运行应用程序时,添加的视图不会显示,结果如下
问题是什么?一个可能的原因是您没有指定视图的高度,因此在渲染过程中视图的高度变为0。有两种方法可以做到这一点:
intrinsicContentSize
如何添加MainItem,可以这样修改代码吗?您使用错误,请阅读以下内容:我以这种方式编辑了我的代码@ukimIn,我仍然得到相同的结果@vivekDasI在添加之前打印初始化视图的高度,如果没有约束,则高度可以在添加后更改@Amir_P您是否也可以发布配置堆栈视图的代码?我已经为内部视图添加了高度约束。配置是从故事板完成的(垂直轴与中心对齐和填充分布)好的,你是对的,没有高度限制,但我记得我已经添加了它。现在修好了