zoukankan      html  css  js  c++  java
  • 1.自定义控制器切换<一>

    一.自定义控制器切换:在同一个控制器上,展示不同的控制器,类似于tabbar一样

    二.怎么做?(问题解决步骤)

    1.创建若干控制器:OneViewController TwoViewController .....

    2.定义一个现实的控制器:

    //定义:

    @property (nonatomic, weak) UIViewController *showingVc;

     self.childViewControllers= @[

                         [[ZSOneViewController alloc] init],

                         [[ZSTwoViewController alloc] init],

                         [[ZSThreeViewController alloc] init]

                         ];

    //或者

     [self addChildViewController:[[ZSOneViewController alloc] init]];

        [self addChildViewController:[[ZSTwoViewController alloc] init]];

        [self addChildViewController:[[ZSThreeViewController alloc] init]];

    3.核心步骤:3.1.移除现实控制器上的视图-->获取到要显示的控制器,并且赋值给显示的控制器-->将显示的控制器添加到主控制器上

      // 移除其他控制器的view

         [self.showingVc.view removeFromSuperview];

        // 获得控制器的位置(索引)

        NSUInteger index = [button.superview.subviews indexOfObject:button];

        // 添加控制器的view

        self.showingVc = self.childViewControllers[index];

        self.showingVc.view.frame = CGRectMake(0, 64, self.view.frame.size.width, self.view.frame.size.height - 64);

        [self.view addSubview:self.showingVc.view];

    //知识点补充:

    //将第一个控制器从childViewControllers数组中移除

    [self.childViewControllers[0] removeFromParentViewController];

  • 相关阅读:
    P1113 杂务 题解
    P3916 图的遍历 题解
    P5318 【深基18.例3】查找文献 题解
    P2814 家谱 题解
    P3879 [TJOI2010]阅读理解 题解
    P4305 不重复的数字题解
    P1955 [NOI2015] 程序自动分析题解
    P1892 [BOI2003]团伙
    P1525 [NOIP2010 提高组] 关押罪犯
    【610】keras 相关问题说明
  • 原文地址:https://www.cnblogs.com/qitiandasheng/p/5544829.html
Copyright © 2011-2022 走看看