首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >didReceiveMemoryWarning崩溃

didReceiveMemoryWarning崩溃
EN

Stack Overflow用户
提问于 2012-07-23 20:23:15
回答 2查看 1.3K关注 0票数 0

-Using圆弧

-I有5个独立的视图控制器,它们都是我创建的一个名为"UIViewControllerWithLoadingView“的类的子类化,它是UIViewController的子类化。

像这样分配和释放属性:-In我分配的子类和超类:

代码语言:javascript
复制
@property (strong, nonatomic) NSURLConnection *urlConnection;

- (void)viewDidUnload
{
    [super viewDidUnload];
    self.urlConnection=nil;
}

-Now当调用didReceiveMemoryWarning时,子类viewDidUnload方法运行良好。如果我在超类UIViewControllerWithLoadingView中将属性设置为nil,应用程序将崩溃。尤其是在我将子类的属性设置为nil的情况下。因此,目前我只是不在超类中将属性设置为nil,这会变得有问题,因为活动字节在运行时会不断堆积。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-24 22:07:23

问题出在超类中,我有一个扩展uiview的视图,它有一个对视图控制器的属性引用。dealloc是在弧中自动调用的,因此dealloc实际上会将视图控制器本身设置为零,从而导致崩溃。一旦我在自定义视图类中删除了视图控制器的属性,问题就不再出现了

票数 0
EN

Stack Overflow用户

发布于 2012-07-23 22:00:50

经验法则是,“清理”的方法--如dealloc或viewDidUnload--应该在完成所有其他操作后调用super。(以及“设置”的方法--比如init--首先调用super。)如果没有看到所有的子类实现,我不知道这是否是您的问题所在,但这将是一个开始。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11612466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档