如果我有一个UIView实例变量,我将其作为子视图添加到另一个视图;
使用ARC时,调用removeFromSuperview是否会释放一个实例变量?或者我可以将它再次添加到不同的视图吗?
答案 0 :(得分:1)
如果你有一个指向你正在添加/删除的视图的强指针,那么调用removeFromSupeview
将不会导致该对象被释放。您可以通过将UIView声明为ivar或将其声明为强属性(首选)来获得强指针。
但是,如果您没有其他指向视图的强指针,那么如果您从超级视图中删除它,它将被ARC取消分配。 (superview保持一个强大的指针,你打破了这种联系。)