我正在浏览一些旧代码并试图检测一些难以发现的错误。我遇到了 UIViewController 的不寻常用法,其中分配了控制器,存储在属性中,并将其视图添加为子视图,而不是呈现整个控制器。
让我首先说我知道这是一种 hacky 和不正常的。也就是说,以下实施中的危险是什么?这可能会导致任何意想不到的副作用吗?如果MyOtherViewController
由于在某个时候收到内存警告而卸载它的视图并重新创建它,这会导致任何奇怪的行为吗?
@interface MyViewController()
@property (nonatomic, strong) MyOtherViewController *otherVC;
@end
@implementation MyViewController
- (void)viewDidLoad
{
self.otherVC = [[MyOtherViewController alloc] init];
[self.view addSubview:self.otherVC.view];
}
@end