xcode工程编译错误:"An instance 0xca90200 of class UITableView was deallocated while key value observers we...

本文描述了一个UITableView实例在dealloc时发生内存泄漏的问题,观察者未正确移除导致对象被重复使用并最终引发应用崩溃。文章提供了简洁的解决代码示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

An instance 0xca90200 of class UITableView was deallocated while key value observers were still registered with it. Observation info was leaked, and may even become mistakenly attached to some other object. Set a breakpoint on NSKVODeallocateBreak to stop here in the debugger. Here's the current observation info:

<NSKeyValueObservationInfo 0xd253ef0> (

<NSKeyValueObservance 0xc5ea1f0: Observer: 0xc5e9560, Key path: contentOffset, Options: <New: YES, Old: NO, Prior: NO> Context: 0x0, Property: 0xd249490>

<NSKeyValueObservance 0xd26a430: Observer: 0xd241970, Key path: contentSize, Options: <New: YES, Old: NO, Prior: NO> Context: 0x0, Property: 0xd251df0>

<NSKeyValueObservance 0xd26a470: Observer: 0xd241970, Key path: contentOffset, Options: <New: YES, Old: NO, Prior: NO> Context: 0x0, Property: 0xd249490>

)

翻译的意思大概就是,uitableview注册了观察者,然后没有被注销掉,又开始重复使用了,我是这么理解的。
我这个页面的功能很简单。就是从列表页面进入到详情页,然后详情页的布局是一个scrollview上放了一个uitableview,uitableview继承了上拉刷新。
我发现这个问题的由来: 当我第一次点详情页后,然后返回,第二次进去,然后返回,次数多了以后。然后就Collapse崩溃了。

解决方法: 

- (void)dealloc{

    [_header free];

    [_footer  free];
}

转载于:https://www.cnblogs.com/lxlx1798/p/7326632.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值