繁体   English   中英

UITableView由于在滚动tableview的同时重新加载数据而崩溃

[英]UITableView is crashing due to reload data at the same time as scrolling the tableview

我正在使用UITableView显示记录列表。 我的表格允许从顶部和底部刷新。 从顶部刷新后,旧记录将保持可见,直到获取新数据为止。 提取数据后,将删除数组中的所有记录,并填充新记录。 然后,作为最后一步,我刷新表视图以反映新获取的数据。

所有的作品都像魅力。

但...

当我们进行猴子测试时,它会导致崩溃。 在最高级刷新期间,如果正在获取数据,则如果我继续滚动并拉动tableview,则经过几次尝试之后,不幸的是删除了数组以添加新记录时,但那时UITableView还在布置单元格由于不断拉。 这会导致崩溃。

一个简单的解决方法是在进行顶部刷新时清空tableview,但是就ui美学而言,这看起来并不好。 另外,如果通话失败,我也不会向用户显示任何内容。

我尝试通过将刷新代码封装在tableview的beginUpdateendUpdate块中进行beginUpdate ,但是由于tableview本身没有更改(即没有添加/删除),因此无法运行。

任何帮助,将不胜感激。

既然您说滚动离开并崩溃了,可能是因为您试图将数据插入不再可见的索引中。 在尝试更新表之前,您应该以某种方式检查您正在使用的索引。 一些代码可以帮助我更好地理解。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM