美文网首页
iOS小技巧·把子视图控制器的视图添加到父视图控制器

iOS小技巧·把子视图控制器的视图添加到父视图控制器

作者: 小码僧 | 来源:发表于2018-08-31 22:13 被阅读450次
  1. 把子视图控制器的视图添加到父视图控制器并覆盖
  • 添加子控制器
#pragma mark - 添加子控制器
- (void)addSubControllers{
  [self addChildViewController:_childViewController];
  [self.view addSubview:_childViewController.view];
  [_childViewController.view mas_makeConstraints:^(MASConstraintMaker *make) {
    make.edges.equalTo(self.view);
  }];
}
  1. 把子视图控制器的视图添加到父视图控制器的指定容器视图,适当时机跳转
  • 添加子控制器
#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.haomeiwen.com/subject/ctoewftx.html