2016-04-25 60 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的網點。