UIStoryboard *gamePlaySB = [UIStoryboard storyboardWithName:STORYBOARD_GAME_PLAY bundle:nil];
CustomAlertViewController *customAlertVC = [gamePlaySB instantiateViewControllerWithIdentifier:CUSTOM_ALERT_VIEW_CONTROLLER];
如上所示,我已经初始化了 viewcontroller ,但是当尝试从初始化的 viewcontroller 访问 IBOutlet 标签并设置其文本时,标签为零。
所以,我必须将值传递给一个变量,然后在 viewDidLoad 中使用它来设置标题。还有其他简单的方法吗?
Best Answer-推荐答案 strong>
CustomAlertViewController *customAlertVC = [gamePlaySB instantiateViewControllerWithIdentifier:CUSTOM_ALERT_VIEW_CONTROLLER];
__unused UIView* view = customAlertVC.view; // this will load everything and call viewDidLoad
customAlertVC.property.text = @"blahblah";
如果真的想从外部设置它。但根据@D。米卡回答,这是不可取的。
关于ios - 在呈现 View Controller 之前, Objective-C 中的 IBOutlet 为零,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/54072119/
|