Я добавляю подпредставление (xib) в контроллер представления. Подпредставление содержит другое подпредставление (xib).
Когда приложение загружается, загружаются оба подпредставления, но последнее дочернее подпредставление имеет все свои IBOutlets как nil.
Ниже приведен простой код с Viewcontroller и два вида. Метод loadUI () печатает ноль.
Вот полный код. https://github.com/Laxmanraju/SubnibbedView
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let cnatainer = Bundle.main.loadNibNamed("ContainerView", owner: self, options: nil)?.first as! ContainerView
self.view.addSubview(cnatainer)
cnatainer.loadUI()
}
}
class ContainerView: UIView {
@IBOutlet weak var detail: DetailOptionView!
func loadUI(){
print(detail.imageView). // prints nil
}
}
class DetailOptionView: UIView {
@IBOutlet weak var imageView: UIImageView!
}