1. 把子视图控制器的视图添加到父视图控制器并覆盖
添加子控制器
#pragma mark - 添加子控制器 - (void)addSubControllers{ [self addChildViewController:_childViewController]; [self.view addSubview:_childViewController.view]; [_childViewController.view mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(self.view); }]; }
2. 把子视图控制器的视图添加到父视图控制器的指定容器视图,适当时机跳转
添加子控制器
#pragma mark - 添加子控制器 - (void)addSubControllers { _childViewController = [[InfoViewController alloc] initWithNibName:NSStringFromClass([InfoViewController class]) bundle:nil]; [self addChildViewController: _childViewController]; _childViewController.sModel = self.sModel; }
跳转控制器
#pragma mark - 跳转控制器 - (void)gotoContentView [self.contentView.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]; [self fitFrameForChildViewController:_childViewController]; //设置默认显示在容器View的内容 [self.contentView addSubview:_childViewController.view]; }
子VC的布局约束
#pragma mark - 子VC的布局约束 - (void)fitFrameForChildViewController:(UIViewController *)chileViewController{ CGRect frame = self.contentView.frame; frame.origin.y = 0; chileViewController.view.frame = frame; }
作者:陈满iOS
链接:https://www.jianshu.com/p/06e334efc46e
本文由 投稿者 创作,文章地址:https://blog.isoyu.com/archives/iosxiaojiqiao%c2%b7bazishitukongzhiqideshitutianjiadaofushitukongzhiqi.html
采用知识共享署名4.0 国际许可协议进行许可。除注明转载/出处外,均为本站原创或翻译,转载前请务必署名。最后编辑时间为:9月 3, 2018 at 10:11 下午