ben üzerinden bir ucu dosyasını başka ViewController çağıran bir rootViewController var:Nib/XIb'nin Şu anda nesne yaşam döngüsü
self.popViewController = PopViewController(nibName: "PopUpViewController_iPhone6Plus", bundle: bundle)
bu init olduğunda: rootViewController PopViewController başlatır
override public init(nibName nibNameOrNil: String!, bundle nibBundleOrNil: NSBundle!) {
super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil)
}
sonra getiriyor aracılığıyla yukarı: showInView
self.popViewController.showInView(self, animated: true)
olduğunu
nerede:func showInView(myRootViewController : MyRootViewController!, animated: Bool)
{
self.myRootViewController = myRootViewController
myRootViewController.view.addSubview(self.view)
myTextField.delegate = self
if animated
{
self.showAnimate()
}
}
myTextField, PopViewController için bir IBOutlet öğesidir. myRootViewController.view.addSubview(self.view)
'dan önce myTextField.delegate = self
'u koyarsam bir hata alıyorum: fatal error: unexpectedly found nil while unwrapping an Optional value
, ancak sonradan koyarsam her şeyin yolunda olduğunu anladım.
Ben Nib files için documentations baktık ve sorum şu:
Ben IBOutlets kalem ucu yıllardan önce bağlı alamadım çünkü myRootViewController.view.addSubview(self.view)
önce myTextField.delegate = self
koymak hata alıyorum sebebi var mı görünüm gösterilir?
Ayrıca: aracılığıyla ucunu yükleme yapar Neden: hemen yüklemez ELVES ile bir görünüm denetleyicisi Init'ing
'NSUnknownKeyException', reason: '[<DeckWheel.PopUpAddDeckViewControllerSwift 0x10026cbe0> setValue:forUndefinedKey:]
Ancak ikinci soru için, görünüm erişildikten sonra textField temsilcisini ayarlamam olsa bile, – YellowPillow
anahtar değeri hatasını atar. "Owner" parametresine gönderdiğiniz nesne, IBOutlet'leri kancalamaya çalıştığı şeydir. için. – dan
@YellowPillow, "ikinci soru için" herhangi bir özellik için bir özellik olmayan sınıfın bir örneğinin yerine gerçek sınıfı gönderiyorsunuz, "bir ikinci soru" oluşturmalısınız. Dan buna cevap verse de, yukarıda. –