IBOutlet nil для пользовательского представления xib, встроенного в другой xib - PullRequest
0 голосов
/ 04 апреля 2020

Я добавляю подпредставление (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!

}

...