美文网首页
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