Iphone 如何正确地从SuperView中删除?

Iphone 如何正确地从SuperView中删除?,iphone,cocoa-touch,uikit,Iphone,Cocoa Touch,Uikit,苹果说: removeFromSuperview取消与 它的superview和它的 窗口,并将其从 响应链 (无效)从SuperView中移除 在运行时不要调用此方法 展示 所以,当我想摆脱一个视图时,我习惯于从它的superview开始。为什么我不能在它可见时调用它?因此,我必须先将其设置为hidden=YES,然后才能执行此操作。规范指定“显示时”为“不显示时”。因此,您不应该在视图的drawRect中调用removeFromSuperview removeFromSuperview将

苹果说:

removeFromSuperview取消与 它的superview和它的 窗口,并将其从 响应链

  • (无效)从SuperView中移除
在运行时不要调用此方法 展示


所以,当我想摆脱一个视图时,我习惯于从它的superview开始。为什么我不能在它可见时调用它?因此,我必须先将其设置为hidden=YES,然后才能执行此操作。

规范指定“显示时”为“不显示时”。因此,您不应该在视图的
drawRect
中调用
removeFromSuperview

removeFromSuperview
将释放该视图并可能取消分配该视图。尝试显示视图时,父视图可能不希望解除分配该视图,从而导致访问损坏