繁体   English   中英

UITableViewCell-prepareForReuse和dequeueReusableCellWithIdentifier

[英]UITableViewCell - prepareForReuse and dequeueReusableCellWithIdentifier

GitHub项目中查看本文 定制单元格(JKCallbacksTableViewCell类)的prepareForReuse方法将通知发送到table(RootViewController类), tableViewCellIsPreparingForReuse方法会观察到该通知。 此方法重置关联密钥和单元格的图像视图。

那么,为什么在从表的dequeueReusableCellWithIdentifier方法获取非零单元格之后,作者为什么更希望通过通知发送该消息呢?

根据UITableViewCell文档 ,prepareForReuse在dequeueReusableCellWithIdentifier之前调用。

如果UITableViewCell对象是可重用的(即,它具有重用标识符),则在从UITableView方法dequeueReusableCellWithIdentifier:返回对象之前,将调用此方法。

我已经测试过,当dequeueReusableCellWithIdentifier返回一个非零值时,它与对prepareForReuse的调用结合在一起。

作者在JKCallbacksTableViewCell.h中评论了应用程序逻辑分离,但我认为这有点过头了; 通过异步调度优化性能,但发送那些缓慢的通知以重置一些属性...还是我缺少有关GCD的信息?

大多数编程问题都有几乎无限数量的解决方案。 除了通知松散耦合之外,我没有其他选择通知的特殊原因。

关于你提到的有关通知的速度评论:这使得应用程序缓慢的加载图像的东西,所以我们正在努力,以优化 通知的速度不够慢,无法以其他方式改变应用程序的使用,因此,出于纯粹的性能原因,不建议使用其他功能。

就是说,它在GitHub中,因此随时发送不使用通知的请求请求。 如果我更喜欢它,我会使用它。

暂无
暂无

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

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