iOS开发-UIViewController添加删除UIViewController

添加

  • 初始化控制器
  • 添加控制器
  • 调整添加View
  • didMoveToParentViewController通知
-(void)addChildVc:(UIViewController*)vc view:(UIView *)view {
    BOOL needAddToParent = !vc.parentViewController;
    if (needAddToParent) [self addChildViewController:vc];
    vc.view.frame = view.bounds;
    [view addSubview:vc.view];
    if (needAddToParent) [vc didMoveToParentViewController:self];
}

删除

  • willMoveToParentViewController通知
  • 是否加载View,加载则移除View
  • 移除控制器
-(void)removeChildVc:(UIViewController*)vc {
    [vc willMoveToParentViewController:nil];
    if (![vc isViewLoaded]) {
        [vc removeFromParentViewController];
    } else {
        [vc.view removeFromSuperview];
        [vc removeFromParentViewController];
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容