在这种情况下,我需要了解内存方面的情况。我是否正确地假设在使用addSubView方法时视图保留了新视图,然后在调用removeFromSuperView时,该superview的保留计数减少到零(最终)?
我正在创建一个这样的视图:
homeViewController = [[HomeViewController alloc]init]; //self retain count = 1
[self.view addSubview:homeViewController.view]; //self retain count = 1; self.view retain count = 1
我正在删除这样的视图:
[homeViewController.view removeFromSuperview]; //self retain count = 1; self.view retain count = 0
答案 0 :(得分:1)
当您执行addSubview时,它会保留视图,因此如果您不想跟踪它何时不再使用,您可以自动发布它。
答案 1 :(得分:1)
HomeViewController
也保留了视图,因为它是视图的控制器。因此,除非控制器也被释放,否则视图不会被销毁。