2016-04-25 66 views
0

我真的不明白我做错了什么。从instantiateViewControllerWithIdentifier加载UIViewController - 零售店

我有这个分享我的UIViewController的实例:

static let sharedInstance = UIStoryboard(name:"Main", bundle:nil).instantiateViewControllerWithIdentifier("IAPNEW") as! newIAPClass 

,如果我提出它,而无需访问它的出口,像这样:

self.presentViewController(newIAPClass.sharedInstance, animated: true, completion: nil) 

它的作品如预期(节目的达) 。但是 - 如果我试图访问他的网点,它的崩溃与“发现无”错误:

 newIAPClass.sharedInstance.lbl_full.text = "mMM" 
     self.presentViewController(newIAPClass.sharedInstance, animated: true, completion: nil) 

有人,任何想法,为什么出口是零?

+0

你知道确定哪两行代码导致崩溃? (分配“mMM”或实际显示视图控制器) – user212514

+0

@ user212514它的确如此。如果我删除了lbl_full行。它按预期显示。我做了很多次,我不知道发生了什么 - 诚实地说。做instantiateViewControllerWithIdentifier - 假设将故事板的插座连接到实例 –

+1

插座直到后期才设置。将字符串存储在属性中,然后将其移动到viewDidLoad中的标签中。 – vacawama

回答

3

网点最初没有设置。解决这个问题的标准方法是将您的数据存储在属性中,然后将这些数据移动到您的网点viewDidLoad

既然你是单身人士加载这个,viewDidLoad将只被调用一次。相反,将您的资料从您的物业复制到viewWillAppear的网点。