【发布时间】:2010-11-17 10:19:33
【问题描述】:
我有一个对象是 UIImageView 的子对象。在所有这些接触方法之前,我将此对象添加到超级视图,然后用户移动它。在touchesEnded中,有时我想释放自我。我试过了:
- [self release]
或
- [self removeFromSuperview]
但所有这些尝试都以异常告终。什么才是释放自我的正确方式?
【问题讨论】:
-
你没有。添加超级视图时,请确保它是自动释放的,或者在添加后立即释放引用。当您执行 [self removeFromSuperview] 时,超级视图将为您释放它。
-
我就是这么做的!我才发现问题出在哪里。我将 dealloc 方法中的 [super dealloc] 从第一行移到 dealloc 的底部,现在可以使用了 :) 谢谢
-
哦,是的,[super dealloc] 始终必须是你的 dealloc 方法中的最后一件事,否则当方法返回时你的对象将消失:)
标签: iphone objective-c memory-management uiimageview self