1

我有一个 ViewController,我在其中添加了许多孩子,如下所示:

        [self addChildViewController:myViewController];

在此之后,我想删除一些依赖于我在程序中的位置的孩子以释放内存。所以我在想这样的事情:

[self.childViewControllers objectAtIndex:1]

然后使用removeFromParentViewController. 但是如何在 objectAtIndex 上提供此代码?我也试过:[self.childViewControllers objectAtIndex:1] = nil;

但这不起作用,我得到表达式不可分配的错误。

4

1 回答 1

1

您可以通过执行“”来获得一组视图控制器[self.navigationController viewControllers]

然后,您可以通过objectAtIndex:该数组上的“”获取其中任何一个。

当您获得其中任何一个时,您可以removeFromParentViewController在该视图控制器上调用 "。

但是,我不会做你想做的事。这可能会让您的用户感到困惑,他们在浏览您的应用程序时认为他们来自一个特定的视图控制器,但现在当他们备份时,他们会回到意想不到的地方。

于 2013-04-02T09:23:31.803 回答