美文网首页
父子控制器

父子控制器

作者: 王小宾 | 来源:发表于2016-05-14 23:56 被阅读19次

    创建控制器A、B,要求把B的视图显示在A的视图上面?

     TableViewController *table = [[TableViewController alloc]init];
     self.table = table;
     self.table.view.frame = CGRectMake(50, 100, 100, 200);
     [self.view addSubview:self.table.view];
     [self addChildViewController:self.table];
    

    这样就可以把子控制器添加到父控制器上面。
    现在这个table控制器可以声明为weak, [self addChildViewController:self.table];这一句就已经引用到了table,不需要用strong来修饰了。

    TableViewController *table = [[TableViewController alloc]init];
        self.table = table;
        self.table.view.frame = CGRectMake(50, 100, 100, 200);
    
        [self.view addSubview:self.table.view];
    //    [self addChildViewController:self.table];
    

    如果像上面这样,父控制器没有拥有子控制器,当用weak修饰table时,她一生下来就死了,没有强指针指向他。引用计数为0.就挂了。

    相关文章

      网友评论

          本文标题:父子控制器

          本文链接:https://www.haomeiwen.com/subject/ahlvrttx.html