numberOfRowsInSection方法什么时候调用

本文记录了一个关于数组越界的问题,在UITableView中遇到了奇怪的现象:行数只有14行,但cell却加载到了15行。通过调试发现,从下一个页面返回时,numberOfRowsInSection方法未被调用,导致数据源未更新。解决方法是在数据源改变时手动调用reloadData。

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

昨天在代码里遇到个问题,很简单的数组越界,但是真心觉得自己把数据处理的思路都理清了不应该会出现这种情况,而且打印出来出现了“灵异事件”,那就是行数只有14行,但是cell加载到了15行,我的天。。。。。

然后全局断点走起来,看到从下一个页面POP回来页面重新加载的时候numberOfRowsInSection方法根本没有被调用就直接开始调用了cellForRowAtIndexPath方法,这完全不科学对不对,怎么页面刷新的时候tableView不会刷新呢?

实际上,下一个页面POP回来页面重新加载的时候页面确实重绘了,但是tableView只是cell重绘了。。。。。坑了个爹的。。。。。。所以下次数据源改变的时候记得手动reloadData一下吧。。切记

 

--------自己挖的坑,mark下,希望别人不会被这个问题卡死。。

转载于:https://www.cnblogs.com/xiaobaichangan/p/5984447.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值