我有一個簡單的UINavigationViewController
,當某個項目被選中時創建一個模式視圖,其中有一個UIImageView
(PostcardViewController在下面) 在裏面。但是,如果我叫iOs:爲什麼IBOutlet在[[alloc] init]之後沒有連線,但是在viewDidUnload:之後被調用
PostcardViewController *postcardViewController = [[PostcardViewController alloc] init];
postcardViewController.imageView.image = image;
[self.navigationController presentModalViewController:postcardViewController animated:YES];
postcardViewController.imageView
是nill,圖像永遠不會顯示。如果我切換後兩條線,並使其:
PostcardViewController *postcardViewController = [[PostcardViewController alloc] init];
[self.navigationController presentModalViewController:postcardViewController animated:YES];
postcardViewController.imageView.image = image;
postcardViewController.imageView
設置,它顯示了罰款。一切都在Interface Builder中進行了連接,PostcardViewController中沒有任何特定的代碼。通過調試,我發現,在調用[viewDidLoad
]之後,imageView已連線,[viewDidLoad
]在我調用[presentModalViewController
]時被調用。
這是爲什麼,而且我在這裏做錯了什麼?我想我應該在實際展示之前設置整個視圖,但現在,我必須在完全設置之前展示它。