- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; if (_userInfoViewCtl != nil && [_userInfoViewCtl isViewLoaded]) { if (_userInfoViewCtl.view.window == nil) { self.userInfoViewCtl = nil; } } }
-(KEUserInfoViewController *) userInfoViewCtl { if (!_userInfoViewCtl) { _userInfoViewCtl = [[KEUserInfoViewController alloc] init]; } return _userInfoViewCtl; }
注意_userInfoViewCtl和self.userInfoViewCtl的用法
这样做的原因是属性的延迟加载,若 _userInfoViewCtl.view.window 这里使用self.userInfoViewCtl.view.window的话,那么这个值一直都不会是nil,因为每次都用都会创建