我有一个 View ,想在 IB 中的其他场景中重用。该 View 包含用户详细信息,例如姓名、头像、描述、几个按钮等。这些 View 完全相同,并且内部具有相同的元素。现在,跨场景复制它们、修复约束,然后一遍又一遍地编写相同的元素是很痛苦的。这效率不高,而且很耗时。理想情况下,我希望在 IB 上看到这些 View ,因此我不想在没有任何视觉效果的情况下以编程方式执行所有操作。有没有一种方法可以让它变得更好,以便我可以重复使用它?
最佳答案
重建相同的组件不仅很痛苦,而且设计很糟糕。我将创建一个 xib 文件,创建支持 swift 或 obj-c 文件。像平常一样连接所有 socket 。
在您需要的每个 View Controller 或 View 中,初始化它并将其添加为 subview 。
很快,我会做类似的事情:
if let subview = Bundle.main.loadNibNamded("SpecialView", owner: self, options: nil)?.first as SpecialView {
// set constraints
containerView.addSubView(subview)
}
关于ios - 在 IB 中或以编程方式重用不同场景的 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50975484/