ios - 使用 XIB 创建自定义视图时出错
问题描述
我使用 xib 创建了一个自定义视图和界面。
class CardStatus: UIView{
override func awakeFromNib() {
super.awakeFromNib()
let bundle = Bundle(for: CardStatus.self)
let nib = UINib(nibName: "CardStatus", bundle: bundle)
guard let view = nib.instantiate(withOwner: self, options: nil).first as? UIView else { fatalError("Error loading \(self) from nib") }
addSubview(view)
view.translatesAutoresizingMaskIntoConstraints = false
}
}
xib 如下所示:
在情节提要中,我已将课程设置为我的自定义课程,如下所示。
错误如下:
它进入无限循环。
我也尝试了以下方法
class CardStatus: UIView{
required init?(coder aDecoder: NSCoder)() {
super.init(coder: aDecoder)
let bundle = Bundle(for: CardStatus.self)
let nib = UINib(nibName: "CardStatus", bundle: bundle)
guard let view = nib.instantiate(withOwner: self, options: nil).first as? UIView else { fatalError("Error loading \(self) from nib") }
addSubview(view)
view.translatesAutoresizingMaskIntoConstraints = false
}
}
解决方案
推荐阅读
- spring-mvc - Thymeleaf:从数组中填充复选框
- c# - 如何在图例中显示名称、值和百分比?
- css - Bootstrap:带有视差的旋转木马,没有背景-img
- angular - Angular2 Firebase 承诺
- azure - IoT Edge 代理配置
- node.js - 如何在 Node.js 中实现 SMTP 和 IMAP
- java - 如何解决乌龟赛跑
- cassandra - Achilles Cassandra - 获得条件更新的结果
- mongodb - Mongo 文本搜索未获取关键字“如何”的结果
- android - 如何获取 DisplayCutoutCompat 的实例